Speed command correction device and primary magnetic flux command generation device

ABSTRACT

A subtractor subtracts an angular speed correction amount from a rotational speed command to obtain a corrected rotational speed command. An adder adds a second-axis current correction value to a γc-axis current to obtain a corrected second-axis current. An angular ripple extraction unit obtains, from a rotational angle on a mechanical angle of a synchronous motor, a rotational angle difference being a ripple component of the rotational angle. An nth-order component extraction unit extracts nth-order components of a fundamental frequency of the rotational angle from the rotational angle difference. A torque conversion unit obtains nth-order components of an estimated value of vibration torque. A correction amount calculation unit obtains the second-axis current correction value using the nth-order components.

TECHNICAL FIELD

The present invention relates to technology for controlling asynchronous motor including a field and an armature. The presentinvention relates, in particular, to technology for controlling thesynchronous motor on the basis of the so-called primary magnetic flux,which is a composite of a field magnetic flux generated by the field anda magnetic flux due to armature reaction generated by an armaturecurrent flowing through the synchronous motor.

BACKGROUND ART

Various types of control of a synchronous motor based on a primarymagnetic flux, which is the so-called primary magnetic flux control,have been proposed. Briefly stated, the primary magnetic flux control iscontrol of the primary magnetic flux of the synchronous motor inaccordance with a command value thereof (hereinafter, referred to as a“primary magnetic flux command”) to control a phase difference (loadangle) of a phase of the primary magnetic flux from a phase of a fieldmagnetic flux so that the phase difference becomes a predetermined phasedifference, for example. Specifically, a command value of a rotationalspeed (hereinafter, “rotational speed command”) of the synchronous motorand the primary magnetic flux command are controlled to control avoltage applied to the synchronous motor, to thereby indirectly controla current flowing through the synchronous motor and, further, torque toobtain a desired rotational speed.

Japanese Patent No. 5494760 proposes technology for correcting adeviation of the load angle from the predetermined phase difference.Patent Japanese Patent No. 5556875 proposes technology for generatingthe primary magnetic flux command. Japanese Patent No. 2551132 proposestechnology for controlling the current flowing through the synchronousmotor so that the current becomes constant. Japanese Patent No. 3874865and WO 2003/071672 propose technology for controlling the torque of thesynchronous motor.

SUMMARY OF INVENTION Problem to be Solved by the Invention

In Japanese Patent No. 5494760, the command value of the rotationalspeed is corrected using an AC part of a component of the currentflowing through the synchronous motor in a phase (corresponding to a γcaxis in a rotating coordinate system) leading, by 90 degrees, a phase(corresponding to a δc axis in the rotating coordinate system) that theprimary magnetic flux should take to thereby correct the deviation ofthe load angle from the predetermined phase difference. However,correction focused on the periodicity of load torque of the synchronousmotor is not made.

Japanese Patent No. 3874865 focuses on the periodicity of the loadtorque, but fails to make a specific reference to application to theprimary magnetic flux control.

The present invention has been conceived in view of the above-mentionedbackground art, and an object thereof is to reduce ripple of vibrationtorque and/or output torque by correcting a rotational speed commandwhile reflecting the periodicity of load torque in primary magnetic fluxcontrol.

Means to Solve the Problem

A speed command correction device (12) according to the presentinvention is a device for correcting a rotational speed command (ωeo*)that is a command value of a rotational speed on an electrical angle ofa synchronous motor (3) for driving a periodic load in a method ofmatching a primary magnetic flux (λδc, λγc) with a primary magnetic fluxcommand (Λδ*) in a first axis (δc) on the basis of the primary magneticflux command and the rotational speed command. The primary magnetic flux(λδc, λγc) is herein a composite of a magnetic flux generated by acurrent ([I]) flowing through the synchronous motor and a field magneticflux (Λ0) of the synchronous motor. The first axis leads the fieldmagnetic flux (Λ0) by a predetermined phase difference.

A first aspect of the speed command correction device according to thepresent invention includes: a first subtractor (109) that subtracts anangular speed correction amount (Δωe*) from the rotational speed command(ωeo*) to obtain a corrected rotational speed command (ωe*); an adder(107) that adds a second-axis current correction value (Δiγc1) to asecond-axis current (iγc) that is a component of the current in a secondaxis (γc) leading the first axis by an electrical angle of 90 degrees toobtain a corrected second-axis current (iγc1); a DC part removal unit(110) that removes a DC part from the corrected second-axis current toobtain the angular speed correction amount; an angular ripple extractionunit (105 a) that obtains, from a rotational angle (θm) on a mechanicalangle of the synchronous motor, a rotational angle difference (Δθm) thatis a ripple component of the rotational angle to a time integral (ωma·t)of an average value of an angular speed of the mechanical angle; acomponent extraction unit (105 b) that extracts an n^(th)-ordercomponent (Δθms(n), Δθmc(n)) (n being a positive integer) of afundamental frequency of the rotational angle (θm) from the rotationalangle difference; a torque conversion unit (105 i) that converts then^(th)-order component into an n^(th)-order component (τvs(n), τvc(n))of an estimated value of vibration torque (τv) of the synchronous motor;and a correction amount calculation unit (105 h) that receives, as aninput, the n^(th)-order component of the estimated value, and obtainsthe second-axis current correction value (Δiγc1) using an input into thecorrection amount calculation unit.

A second aspect of the speed command correction device according to thepresent invention includes: a first subtractor (109) that subtracts anangular speed correction amount (Δωe*) from the rotational speed command(ωeo*) to obtain a corrected rotational speed command (ωe*); an adder(107) that adds a second-axis current correction value (Δiγc1) to asecond-axis current (iγc) that is a component of the current in a secondaxis (γc) leading the first axis by an electrical angle of 90 degrees toobtain a corrected second-axis current (iγc1); a DC part removal unit(110) that removes a DC part from the corrected second-axis current toobtain the angular speed correction amount; an output torque estimationunit (105 d) that obtains an estimated value of output torque (τe) ofthe synchronous motor from the primary magnetic flux, a first-axiscurrent (iδc) that is a component of the current in the first axis, andthe second-axis current; a component extraction unit (105 e) thatextracts, from the estimated value, an n^(th)-order component (τes(n),τec(n)) (n being a positive integer) of a fundamental frequency of arotational angle (θm) as a mechanical angle of the synchronous motor;and a correction amount calculation unit (105 h) that receives then^(th)-order component as an input, and obtains the second-axis currentcorrection value (Δiγc1) using the input into the correction amountcalculation unit.

A third aspect of the speed command correction device according to thepresent invention includes: a first subtractor (109) that subtracts anangular speed correction amount (Δωe*) from the rotational speed command(ωeo*) to obtain a corrected rotational speed command (ωe*); an adder(107) that adds a second-axis current correction value (Δiγc1) to asecond-axis current (iγc) that is a component of the current in a secondaxis (γc) leading the first axis by an electrical angle of 90 degrees toobtain a corrected second-axis current (iγc1); a DC part removal unit(110) that removes a DC part from the corrected second-axis current toobtain the angular speed correction amount; an angular ripple extractionunit (105 a) that obtains, from a rotational angle (θm) on a mechanicalangle of the synchronous motor, a rotational angle difference (Δθm) thatis a ripple component of the rotational angle to a time integral (ωma·t)of an average value of an angular speed of the mechanical angle; a firstcomponent extraction unit (105 b) that extracts an n^(th)-ordercomponent (Δθms(n), Δθmc(n)) (n being a positive integer) of afundamental frequency of the rotational angle (θm) from the rotationalangle difference; a torque conversion unit (105 i) that converts then^(th)-order component into an n^(th)-order component (τvs(n), τvc(n))of an estimated value of vibration torque (τv) of the synchronous motor;an output torque estimation unit (105 d) that obtains an estimated valueof output torque (τe) of the synchronous motor from the primary magneticflux, a first-axis current (iδc) that is a component of the current inthe first axis, and the second-axis current; a second componentextraction unit (105 e) that extracts an n^(th)-order component (τes(n),τec(n)) of the fundamental frequency from the estimated value of outputtorque; a proration unit (105 c, 105 f) that prorates the n^(th)-ordercomponent (τvs(n), τvc(n)) obtained by the torque conversion unit andthe n^(th)-order component (τes(n), τec(n)) extracted by the secondcomponent extraction unit with a predetermined proration rate(K(n)/[1−K(n)]) to respectively obtain a first value and a second value;an adder (105 g) that obtains a sum of the first value and the secondvalue; and a correction amount calculation unit (105 h) that receivesthe sum as an input, and obtains the second-axis current correctionvalue (Δiγc1) using the input into the correction amount calculationunit.

A fourth aspect of the speed command correction device according to thepresent invention is the third aspect thereof in which the firstcomponent extraction unit (105 b) extracts, from the rotational angledifference (Δθm), a vibration torque suppression component (Δθms(j),Δθmc(j)) that is a component for at least one order including a1^(st)-order component (Δθms(1), Δθmc(1)) of the fundamental frequencyof the rotational angle (θm), the second component extraction unit (105e) extracts, from the estimated value of output torque, a component(τes(j), τec(j)) for an order corresponding to the vibration torquesuppression component, the speed command correction device furtherincludes a third component extraction unit (105 m) that extracts, fromthe estimated value of the output torque, an output torque suppressioncomponent (τes(m), τec(m)) that is a component for at least one orderother than the order corresponding to the vibration torque suppressioncomponent. The correction amount calculation unit (105 h) furtherreceives the output torque suppression component as an input, andobtains the second-axis current correction value (Δiγc1) using the inputinto the correction amount calculation unit.

Fifth and seventh aspects of the speed command correction deviceaccording to the present invention are each the third aspect thereof inwhich the first component extraction unit (105 b) extracts a1^(st)-order component (Δθms(1), Δθmc(1)) of the fundamental frequencyof the rotational angle (θm). The torque conversion unit (105 i)converts a value extracted by the first component extraction unit into a1^(st)-order component (τvs(1), τvc(1)) of the estimated value ofvibration torque.

The fifth aspect of the speed command correction device according to thepresent invention further includes: an odd-order component extractionunit (105 q) that extracts, from the estimated value of output torque,an output torque odd-order suppression component (τes(d), τec(d)) thatis a component for at least one odd order equal to or greater than a3^(rd) order of the fundamental frequency; an odd-order torque commandgeneration unit (105 r) that obtains a command value (τes*(d), τec*(d))of the output torque odd-order suppression component on the basis of the1^(st)-order component of the fundamental frequency of the estimatedvalue of output torque; and a subtractor (105 s) that obtains adifference (Δτes(d), Δτec(d)) of the output torque odd-order suppressioncomponent from the command value.

The correction amount calculation unit (105 h) further receives thedifference as an input, and obtains the second-axis current correctionvalue (Δiγc1) using the input into the correction amount calculationunit.

A sixth aspect of the speed command correction device according to thepresent invention is the fifth aspect thereof further including aneven-order component extraction unit (105 p) that extracts, from theestimated value of output torque, an output torque even-ordersuppression component (τes(e), τec(e)) that is a component for at leastone even order of the fundamental frequency.

The correction amount calculation unit (105 h) further receives theoutput torque even-order suppression component as an input, and obtainsthe second-axis current correction value (Δiγc1) using the input intothe correction amount calculation unit.

In the seventh aspect of the speed command correction device accordingto the present invention, the speed command correction device furtherincludes: an even-order component extraction unit (105 p) that extracts,from the estimated value of output torque, an output torque even-ordersuppression component (τes(e), τec(e)) that is a component for at leastone even order of the fundamental frequency; an even-order torquecommand generation unit (105 t) that obtains a command value (τes*(e),τec*(e)) of the output torque even-order suppression component on thebasis of the 1^(st)-order component of the fundamental frequency of theestimated value of output torque; and a subtractor (105 u) that obtainsa difference (Δτes(e), Δτec(e)) of the output torque even-ordersuppression component from the command value.

The correction amount calculation unit (105 h) further receives thedifference as an input, and obtains the second-axis current correctionvalue (Δiγc1) using the input into the correction amount calculationunit.

An eighth aspect of the speed command correction device according to thepresent invention is the seventh aspect thereof further including anodd-order component extraction unit (105 q) that extracts, from theestimated value of output torque, an output torque odd-order suppressioncomponent (τes(d), τec(d)) that is a component for at least one oddorder of the fundamental frequency.

The correction amount calculation unit (105 h) further receives theoutput torque odd-order suppression component as an input, and obtainsthe second-axis current correction value (Δiγc1) using the input intothe correction amount calculation unit.

A ninth aspect of the speed command correction device according to thepresent invention is the seventh aspect thereof further including: anodd-order component extraction unit (105 q) that extracts, from theestimated value of output torque, an output torque odd-order suppressioncomponent (τes(d), τec(d)) that is a component for at least one oddorder equal to or greater than a 3^(rd) order of the fundamentalfrequency; an odd-order torque command generation unit (105 r) thatobtains a command value (τes*(d), τec*(d)) of the output torqueodd-order suppression component on the basis of the 1^(st)-ordercomponent of the fundamental frequency of the estimated value of outputtorque; and a subtractor (105 s) that obtains a second difference(Δτes(d), Δτec(d)) of the output torque odd-order suppression componentfrom the command value.

The correction amount calculation unit (105 h) further receives thesecond difference as an input, and obtains the second-axis currentcorrection value (Δiγc1) using the input into the correction amountcalculation unit.

A tenth aspect of the speed command correction device according to thepresent invention is any one of the seventh, eighth, and ninth aspectsthereof in which the even-order torque command generation unit (105 t)obtains the command value (τes*(e), τec*(e)) of the output torqueeven-order suppression component on the basis of the 1^(st)-ordercomponent and a 0^(th)-order component (τe(0)) of the fundamentalfrequency of the estimated value of output torque.

In each of the first to tenth aspects, the correction amount calculationunit (105 h) preferably obtains, as a coefficient of a Fourier series, avalue obtained by performing proportional integral control on the inputinto the correction amount calculation unit, and obtains the second-axiscurrent correction value from a result of the Fourier series.

A primary magnetic flux command generation device (103) according to thepresent invention is a primary magnetic flux command generation devicefor outputting the primary magnetic flux command (Λδ*) used in themethod together with the rotational speed command (ωe*) corrected by theabove-mentioned speed command correction device (12), and includes: afourth component extraction unit (103 a) that extracts a 0^(th)-ordercomponent of a parameter for setting output torque (τe) of thesynchronous motor (3); a fifth component extraction unit (103 b) thatextracts an n^(th)-order component of the parameter; a composite valuecalculation unit (103 c) that obtains a composite value of then^(th)-order component of the parameter; a second adder (103 d) thatobtains a sum of the 0^(th)-order component of the parameter and then^(th)-order component of the parameter; and a magnetic flux commandsetting unit (103 e) that sets the primary magnetic flux command on thebasis of the sum obtained by the second adder, the current ([I]), thefield magnetic flux (Λ0), and inductance (Ld, Lq) of the synchronousmotor.

As the parameter, any of a first-axis current (iδc) that is a componentof the current in the first axis, the second-axis current (iγc), and aload angle (φ) that is a phase difference of a phase of the primarymagnetic flux (λδc, λγc) from a phase of the field magnetic flux (Λ0)can be used. Alternatively, the output torque itself can be used inplace of the parameter.

Effects of the Invention

According to the first aspect of the speed command correction deviceaccording to the present invention, the vibration torque of thesynchronous motor is suppressed.

According to the second aspect of the speed command correction deviceaccording to the present invention, ripple of the output torque of thesynchronous motor is suppressed.

According to the third and fourth aspects of the speed commandcorrection device according to the present invention, suppression of thevibration torque of the synchronous motor and suppression of the rippleof the output torque are prorated.

According to the fifth to tenth aspects of the speed command correctiondevice according to the present invention, a peak value of the currentflowing through the synchronous motor is suppressed.

According to the sixth and eighth aspects of the speed commandcorrection device according to the present invention, suppression of thefundamental wave component of the vibration torque of the synchronousmotor is not impaired.

According to the primary magnetic flux command generation deviceaccording to the present invention, the primary magnetic flux commandsuitable for the speed command correction device according to the firstto third aspects is generated.

The objects, features, aspects, and advantages of the present inventionwill become more apparent from the following detailed description andthe accompanying drawings.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a block diagram illustrating the configuration of a motorcontrol device in a first embodiment and peripherals thereof;

FIG. 2 is a block diagram illustrating the configuration of a γc-axiscurrent correction unit;

FIG. 3 is a block diagram illustrating the configuration of an angularripple extraction unit;

FIG. 4 is a block diagram illustrating the configuration of acalculation unit;

FIG. 5 is a block diagram illustrating the configuration of an outputtorque estimation unit;

FIG. 6 is a block diagram illustrating the configuration of a correctionamount calculation unit;

FIG. 7 is a block diagram illustrating the configuration of a PIcontroller;

FIG. 8 is a block diagram illustrating the configuration of a PIcontroller;

FIG. 9 is a block diagram illustrating the configuration of the γc-axiscurrent correction unit in a second embodiment;

FIG. 10 is a block diagram illustrating the configuration of thecorrection amount calculation unit in the second embodiment;

FIG. 11 is a block diagram illustrating the configuration of the γc-axiscurrent correction unit in a third embodiment;

FIG. 12 is a block diagram illustrating the configuration of thecorrection amount calculation unit in the third embodiment;

FIG. 13 is a block diagram illustrating the configuration of anodd-order torque command generation unit in the third embodiment;

FIG. 14 is a graph showing a first example of waveforms of odd-ordercomponents of output torque in the third embodiment;

FIG. 15 is a graph showing a first example of a waveform of the sum ofthe odd-order components of the output torque in the third embodiment;

FIG. 16 is a graph showing a second example of the waveforms of theodd-order components of the output torque in the third embodiment;

FIG. 17 is a graph showing a second example of the waveform of the sumof the odd-order components of the output torque in the thirdembodiment;

FIG. 18 is a block diagram illustrating the configuration of the γc-axiscurrent correction unit used in a fourth embodiment;

FIG. 19 is a block diagram illustrating the configuration of thecorrection amount calculation unit in the fourth embodiment;

FIG. 20 is a block diagram illustrating the configuration of the γc-axiscurrent correction unit used in a fifth embodiment;

FIG. 21 is a block diagram illustrating the configuration of thecorrection amount calculation unit in the fifth embodiment;

FIG. 22 is a block diagram illustrating the configuration of aneven-order torque command generation unit in the fifth embodiment;

FIG. 23 is a graph showing components of the output torque in the fifthembodiment;

FIG. 24 is a graph showing an upper limit of a magnitude of a2^(nd)-order component of the output torque;

FIG. 25 is a block diagram illustrating another example of theconfiguration of the even-order torque command generation unit in thefifth embodiment;

FIG. 26 is a block diagram illustrating the configuration of the γc-axiscurrent correction unit used in a sixth embodiment;

FIG. 27 is a block diagram illustrating the configuration of thecorrection amount calculation unit in the sixth embodiment;

FIG. 28 is a block diagram illustrating the configuration of the γc-axiscurrent correction unit used in a seventh embodiment;

FIG. 29 is a block diagram illustrating the configuration of thecorrection amount calculation unit in the seventh embodiment;

FIG. 30 is a graph showing components of the output torque in theseventh embodiment;

FIG. 31 is a graph showing the upper limit of the magnitude of the2^(nd)-order component of the output torque;

FIG. 32 is a block diagram illustrating the configuration of a primarymagnetic flux command generation device used in the motor control devicein an eighth embodiment;

FIG. 33 is a graph showing the dependence of a primary magnetic fluxcommand on a second corrected γc-axis current;

FIG. 34 is a Bode plot showing a transfer characteristic of thecalculation unit;

FIG. 35 is a block diagram illustrating a modification of theconfiguration of the primary magnetic flux command generation deviceused in the motor control device in the eighth embodiment;

FIG. 36 is a graph showing the dependence of the primary magnetic fluxcommand on the output torque after correction;

FIG. 37 is a block diagram illustrating a modification of theconfiguration of the primary magnetic flux command generation deviceused in the motor control device in the eighth embodiment;

FIG. 38 is a graph showing the dependence of the primary magnetic fluxcommand on a δc-axis current after correction;

FIG. 39 is a block diagram illustrating a modification of theconfiguration of the primary magnetic flux command generation deviceused in the motor control device in the eighth embodiment;

FIG. 40 is a graph showing the dependence of the primary magnetic fluxcommand on a load angle after correction; and

FIG. 41 is a block diagram illustrating the configuration of amodification of the motor control device and peripherals thereof.

DESCRIPTION OF EMBODIMENTS First Embodiment

FIG. 1 is a block diagram illustrating the configuration of a motorcontrol device 1 in a first embodiment and peripherals thereof.

A synchronous motor 3 is a three-phase rotary motor, and includes anarmature (not illustrated) and a rotor (not illustrated) as a field. Itis common general knowledge that the armature includes an armaturewinding, and the rotor rotates relative to the armature. The fieldincludes, for example, a magnet (field magnet: not illustrated)generating a field magnetic flux, and is of an embedded magnet type, forexample.

A voltage supply 2 includes, for example, a voltage-controlled inverterand a control unit therefor, and applies a three-phase voltage to thesynchronous motor 3 on the basis of a three-phase voltage command value[V*] (a symbol [ ] indicates that the value is a vector). This allows athree-phase current [I] to flow from the voltage supply 2 to thesynchronous motor 3.

The motor control device 1 controls a primary magnetic flux and arotational speed (rotational angular speed in the following example) ofthe synchronous motor 3. The primary magnetic flux is a composite of afield magnetic flux Λ0 generated by the field magnet and a magnetic fluxdue to armature reaction generated by an armature current (this is alsothe three-phase current [I]) flowing through the synchronous motor 3(more specifically, through the armature). A primary magnetic fluxcommand Λδ* is a command value of a magnitude Λδ of an actual primarymagnetic flux.

The motor control device 1 performs control in a method of matching theprimary magnetic flux of the synchronous motor 3 with the primarymagnetic flux command Λδ* in a δc axis, which is a control axis of theprimary magnetic flux, to control the synchronous motor 3. The δc axisleads a d axis, which indicates a phase of the field magnetic flux Λ0 ina rotating coordinate system, by a predetermined phase difference. Theactual primary magnetic flux has a δc-axis component λδc in the δc axisand a γc-axis component λγc in a γc axis. The γc axis leads the δc axisby an electrical angle of 90 degrees. The δc-axis component λδc and theγc-axis component λγc are hereinafter also simply expressed as primarymagnetic fluxes λδc and λγc.

As to the command value of the primary magnetic flux, the γc-axiscomponent is zero and the δc-axis component is set to the primarymagnetic flux command Λδ* as described above, usually. This means thatthe motor control device 1 performs control so that the γc-axiscomponent λγc of the actual primary magnetic flux becomes zero to obtainthe predetermined phase difference. Such control is commonly referred toas primary magnetic flux control, and is known in Japanese Patent No.5494760 and Japanese Patent No. 5556875, for example. The primarymagnetic flux and the rotational speed are usually used as controllableamounts in the primary magnetic flux control.

In the present embodiment, the primary magnetic flux may be either anestimated value or an observed value. Technology for estimating theprimary magnetic flux itself is known, for example, in Japanese PatentNo. 5494760.

The motor control device 1 includes a first coordinate transformationunit 101, a magnetic flux control unit 102, a second coordinatetransformation unit 104, and a speed command correction device 12.

The first coordinate transformation unit 101 performs three-phase totwo-phase transformation based on an electrical angle θe of thesynchronous motor 3 obtained as described below. Specifically, the firstcoordinate transformation unit 101 transforms the three-phase current[I] into a δc-axis current iδc and a γc-axis current iγc in a δc-γcrotating coordinate system in which the primary magnetic flux control isperformed. In this case, the sum of currents of three phases of thethree-phase current becomes zero, and thus, if currents of two phasesare obtained, a current of the remaining phase is estimated from thecurrents of the two phases. As described above, “3(2)” in FIG. 1indicates that detected currents may be either currents of three phasesor currents of two phases. It can be said that the δc-axis current iδcand the γc-axis current iγc are respectively the δc-axis component andthe γc-axis component of a current flowing through the synchronous motor3.

The second coordinate transformation unit 104 performs two-phase tothree-phase transformation based on the electrical angle θe.Specifically, the second coordinate transformation unit 104 transforms aδc-axis voltage command value vδ* and a γc-axis voltage command valuevγ* in the δc-γc rotating coordinate system into the three-phase voltagecommand value [V*].

The second coordinate transformation unit 104 may transform the δc-axisvoltage command value vδ* and the γc-axis voltage command value vγ* intoa voltage command value in another coordinate system, such as a d-qrotating coordinate system, in place of the three-phase voltage commandvalue [V*]. Examples of the other coordinate system include an αβ fixedcoordinate system, a uvw fixed coordinate system, and a polar coordinatesystem.

The magnetic flux control unit 102 obtains, from a rotational speedcommand ωeo* (on the electrical angle), a rotational speed command ωm*(on a mechanical angle) corresponding thereto. The function can easilybe achieved by known technology, and thus details thereof are omitted.

The magnetic flux control unit 102 has an integration function, forexample. A rotational speed command ωe* is integrated by the integrationfunction to obtain the electrical angle θe. From the obtained electricalangle θe and a load angle φ to the d axis of the primary magnetic flux,a rotational angle θm as the mechanical angle can be obtained by anequation (1). Note that the number of pole pairs P of the synchronousmotor 3 is introduced.

$\begin{matrix}{{\theta\; m} = {\frac{1}{P}\left( {{\theta\; e} - \varphi} \right)}} & (1)\end{matrix}$

The load angle φ may be either an estimated value or an observed value.Technology for estimating the load angle φ itself is also known, forexample, in Japanese Patent No. 5494760. Any known technology other thanthe equation (1) can be used as a method of obtaining the rotationalangle θm.

The magnetic flux control unit 102 also generates the δc-axis voltagecommand value vδ* and the γc-axis voltage command value vγ* on the basisof the δc-axis current iδc, the γc-axis current iγc, the primarymagnetic fluxes λδc and λγc, the primary magnetic flux command Λδ*, andthe rotational speed command ωe*. The function, the configuration toachieve the function, and a technique of estimating the primary magneticfluxes λδc and λγc are known, for example, in Japanese Patent No.5494760, and thus details thereof are omitted herein.

The speed command correction device 12 includes a γc-axis currentcorrection unit 105 (“iγc correction unit” in FIG. 1), an adder 107, asubtractor 109, and a high-pass filter 110.

The γc-axis current correction unit 105 obtains a first γc-axis currentcorrection value Δiγc1 on the basis of the rotational angle θm, therotational speed command ωm*, the primary magnetic fluxes λ∂c and λγc,the δc-axis current iδc, the γc-axis current iγc, and an order n. Thefirst γc-axis current correction value Δiγc1 is an amount to reduce ann^(th)-order component (n is a positive integer) of a fundamentalfrequency of the rotational angle θm, and a specific meaning thereof andhow to obtain the first γc-axis current correction value Δiγc1 will bedescribed below.

The adder 107 adds the first γc-axis current correction value Δiγc1 tothe γc-axis current iγc to obtain a first corrected γc-axis currentiγc1. The high-pass filter 110 functions as a DC part removal unit thatremoves a DC part from the first corrected γc-axis current iγc1 toobtain an angular speed correction amount Δωe*. The speed commandcorrection device 12 may further include a constant multiplication unit108 as illustrated, and the angular speed correction amount Δωe* may beobtained as an amount obtained by multiplying an output of the high-passfilter 110 by a predetermined gain Km using the constant multiplicationunit 108.

The subtractor 109 subtracts the angular speed correction amount Δωe*from the rotational speed command ωeo* on the electrical angle to obtaina corrected rotational speed command ωe*.

FIG. 2 is a block diagram illustrating the configuration of the γc-axiscurrent correction unit 105. The γc-axis current correction unit 105includes a vibration torque extraction unit 105A, an output torqueextraction unit 105B, an adder 105 g, and a correction amountcalculation unit 105 h.

The vibration torque extraction unit 105A includes an angular rippleextraction unit 105 a, an n^(th)-order component extraction unit 105 b,a torque conversion unit 105 i, and a proration coefficientmultiplication unit 105 e.

The angular ripple extraction unit 105 a obtains a rotational angledifference Δθm from the rotational angle θm and the rotational speedcommand ωm*. The n^(th)-order component extraction unit 105 b extractsn^(th)-order components Δθms(n) and Δθmc(n) of the fundamental frequencyof the rotational angle θm from the rotational angle difference Δθm. Thetorque conversion unit 105 i converts the n^(th)-order componentsΔθms(n) and Δθmc(n) into torque. Specifically, the torque conversionunit 105 i obtains n^(th)-order components τvs(n) and τvc(n) of anestimated value of vibration torque τv of the synchronous motor 3 at therotational angle θm. The vibration torque τv and the estimated valuethereof are each expressed as the “vibration torque τv” for conveniencesake as a difference between the estimated value and an actual value ofthe vibration torque τv is not dealt with herein.

The vibration torque τv has a value obtained by subtracting load torqueτd of a mechanical load (not illustrated) driven by the synchronousmotor 3 from output torque τe of the synchronous motor 3. The loadtorque τd has the periodicity, that is, the synchronous motor 3 drives aperiodic load. An example of the mechanical load includes a compressionmechanism for compressing a refrigerant used in an air conditioner, forexample.

When the synchronous motor 3 is rotating, the rotational angle θm isexpressed as a function θm(t) of time t. Thus, when moment of inertia ofthe mechanical load is expressed as J, an equation (2) holds. The momentof inertia J is usually known.

$\begin{matrix}{{\tau\; v} = {{{\tau\; e} - {\tau\; d}} = {{J \cdot \frac{d^{2}}{{dt}^{2}}}\theta\;{m(t)}}}} & (2)\end{matrix}$

The effect of the mechanical load on the rotational angle θm per 1/nrotation (n=1, 2, 3, . . . ) of the synchronous motor 3 is consideredherein. The vibration torque τv has a component (the above-mentioned“n^(th)-order component”) varying with a period of 1/n of the period ofthe rotational angle θm, and having independent amplitude for eachorder. For example, main amplitude is the amplitude of a 1^(st)-ordercomponent corresponding to an equation n=1 when the mechanical load is aone-cylinder compressor, and is the amplitude of a 2^(nd)-ordercomponent corresponding to an equation n=2 when the mechanical load is atwo-cylinder compressor. The rotational angle θm(t) is approximated byan equation (3) by introducing an average value of an angular speed(hereinafter, referred to as an “average angular speed”) ωma, andamplitude M(n) and a phase α(n) for each order. A symbol Σ hereinindicates the sum for the order n.θm(t)=ωma·t+Σ[M(n)·sin(n·ωma·t+α(n))]  (3)

An equation (4) holds from the equation (3).

$\begin{matrix}{{\frac{d^{2}}{{dt}^{2}}\theta\;{m(t)}} = {{- \omega}\;{{ma}^{2} \cdot {\Sigma\left\lbrack {{M(n)} \cdot n^{2} \cdot {\sin\left( {{{n \cdot \omega}\;{{ma} \cdot t}} + {\alpha(n)}} \right)}} \right\rbrack}}}} & (4)\end{matrix}$

Equations (5) hold from the equations (2) and (4).τv=J·(−ωma ²)·Σ[n ² ·Δθm],Δθm=θm(t)−θmfθmf=ωma·t  (5)

It can be said that the first term ωma·t of the right-hand side of theequation (3) is a time integral of the average angular speed ωma. If therotational angle θm is expressed only by the first term of theright-hand side of the equation (3) (i.e., an equation M(n)=0 holds foreach order n), it is a case where the synchronous motor 3 rotates inaccordance with the rotational speed command ωm*, and the averageangular speed ωma becomes constant by the rotational speed command ωm*.An angle θmf in such a case is the rotational angle θm when thesynchronous motor 3 rotates at a constant speed by the rotational speedcommand ωm* (at the time of constant-speed rotation). This enables theangle θmf to be obtained as the product of the rotational speed commandωm* and the time t, and, once the time t is obtained, it is easy toobtain the rotational angle difference Δθm.

FIG. 3 is a block diagram illustrating the configuration of the angularripple extraction unit 105 a together with the n^(th)-order componentextraction unit 105 b and the torque conversion unit 105 i. The angularripple extraction unit 105 a includes a calculation unit 11 a and asubtractor 11 b. The calculation unit 11 a obtains the angle θmf fromthe rotational angle θm. The subtractor 11 b subtracts the angle θmffrom the rotational angle θm to obtain the rotational angle differenceΔθm. The rotational angle difference Δθm corresponds to the second termof the right-hand side of the equation (3), and it can be said that therotational angle difference Δθm is a ripple component of the rotationalangle. This means that the angular ripple extraction unit 105 aextracts, from the rotational angle θm, the ripple component of therotational angle θm at the time of constant-speed rotation of thesynchronous motor 3.

Note that the time t is not obtained separately in the above-mentionedconfiguration example. An example of technology for obtaining the angleθmf without using the time t is thus described below.

FIG. 4 is a block diagram illustrating the configuration of thecalculation unit 11 a. The calculation unit 11 a includes a subtractor111, adders 112, 115, and 117, dividers 113 and 116, and delayers 114and 118.

The subtractor 111 subtracts an output of the delayer 118 from therotational angle θm to obtain a value ωth. The adder 112 adds an outputof the delayer 114 to the value ωth to obtain a sum u. The divider 113divides the sum u by a constant A. The adder 115 adds the value ωth anda result of division performed by the divider 113. The divider 116divides a result of addition performed by the adder 115 by a constant B.The adder 117 adds the output of the delayer 118 and a result ofdivision performed by the divider 116. The angle θmf can be obtained asa result of addition performed by the adder 117. The delayer 114 delaysthe sum u, and the delayer 118 delays the angle θmf by the same time. Acase where the delayers 114 and 118 use one period of calculationperformed by the calculation unit 11 a as a delay amount is herein shownas an example.

The above-mentioned calculation performed by the calculation unit 11 ais expressed by equations (6):

$\begin{matrix}{{{\theta\;{mf}} = {{z^{- 1}\theta\;{mf}} + {\frac{1}{B}\left( {{\omega\;{th}} + {\frac{1}{A} \cdot \mu}} \right)}}},{{\omega\;{th}} = {{\theta\; m} - {z^{- 1}\theta\;{mf}}}},{u = {{\omega\;{th}} + {z^{- 1}u}}}} & (6)\end{matrix}$

FIG. 34 is a Bode plot showing a transfer characteristic of thecalculation unit 11 a. The calculation unit 11 a has a characteristic ofa low-pass filter, and removes a high-frequency component. Thecalculation unit 11 a herein removes, from the rotational angle θm, therotational angle difference Δθm as the ripple component to obtain theangle θmf.

The n^(th)-order component extraction unit 105 b extracts then^(th)-order component of the vibration torque τv from the firstequation of the equations (5). The component of the rotational angledifference Δθm for the order to be extracted is herein handled by beingdivided into a sine value component Δθms(n) and a cosine value componentΔθmc(n) instead of calculating a phase α(n). Specific operation of then^(th)-order component extraction unit 105 b will be described below.

Referring to FIG. 3 and the equations (5), the torque conversion unit105 i receives the order n and the rotational speed command ωm* asinputs, and multiplies the n^(th)-order components Δθms(n) and Δθmc(n)of the rotational angle difference Δθm by the product of the moment ofinertia J, the square of the rotational speed command ωm*, and thesquare of the order n to obtain the n^(th)-order component of thevibration torque τv. Specifically, a sine value component τvs(n) and acosine value component τvc (n) of the vibration torque τv for the n^(th)order are obtained.

The output torque extraction unit 105B includes an output torqueestimation unit 105 d, an n^(th)-order component extraction unit 105 e,and a proration coefficient multiplication unit 105 f.

The output torque estimation unit 105 d uses the primary magnetic fluxesλδc and λγc, the δc-axis current iδc, and the γc-axis current iγc toobtain an estimated value of the output torque τe from an equation (7):τe=P·(λδc·iγc−Δγc·iδc)  (7)

The output torque τe and the estimated value thereof are each expressedas the “output torque τe” for convenience sake as a difference betweenthe estimated value and an actual value of the output torque τe is notdealt with herein.

FIG. 5 is a block diagram illustrating the configuration of the outputtorque estimation unit 105 d. The output torque estimation unit 105 dincludes multipliers 11 d and 11 e, a subtractor 11 f, and a constantmultiplication unit 11 g.

The multiplier 11 d obtains the product λδc·iγc of the δc-axis componentλδc of the primary magnetic flux and the γc-axis current iγc. Themultiplier 11 e obtains the product λγc·iδc of the γc-axis component λγcof the primary magnetic flux and the δc-axis current iδc. The subtractor11 f subtracts the product λγc·iδc from the product λδc·iγc. Theconstant multiplication unit 11 g multiplies a result of subtractionobtained by the subtractor 11 f by the number of pole pairs P to obtainthe output torque τe.

The n^(th)-order component extraction unit 105 e extracts, from theoutput torque τe, n^(th)-order components τes(n) and τec(n) of thefundamental frequency of the rotational angle θm, as with then^(th)-order component extraction unit 105 b.

Specifically, the n^(th)-order component extraction units 105 b and 105e each obtain a sine value component and a cosine value component of aninput amount using the Fourier transform. The rotational angledifference Δθm and the output torque τe are each a function of therotational angle θm, and, when each of them is expressed as a functionF(θm), equations (8) hold.

$\begin{matrix}{{{F\left( {\theta\; m} \right)} = {\frac{a\; 0}{2} + {\sum\limits_{n = 1}^{\infty}\left\{ {{{an} \cdot {\cos\left( {{n \cdot \theta}\; m} \right)}} + {{bn} \cdot {\sin\left( {{n \cdot \theta}\; m} \right)}}} \right\}}}}\left( {{n = 1},2,3,\ldots} \right)\left\{ \begin{matrix}{{a\; 0} = {\frac{1}{\pi}{\int_{- \pi}^{\pi}{{F\left( {\theta\; m} \right)}d\;\theta\; m}}}} \\{{an} = {\frac{1}{\pi}{\int_{–\pi}^{\pi}{\left\{ {{F\left( {\theta\; m} \right)} \cdot {\cos\left( {{n \cdot \theta}\; m} \right)}} \right\} d\;\theta\; m}}}} \\{{bn} = {\frac{1}{\pi}{\int_{- \pi}^{\pi}{\left\{ {{F\left( {\theta\; m} \right)} \cdot {\sin\left( {{n \cdot \theta}\; m} \right)}} \right\} d\;\theta\; m}}}}\end{matrix} \right.} & (8)\end{matrix}$

Here, a value a0 denotes a DC component (0^(th)-order component) of thefunction F(θm), a value an denotes the amplitude of a cosine value of ann^(th)-order component of the function F(θm), and a value bn denotes theamplitude of a sine value of the n^(th)-order component of the functionF(θm). To perform the above-mentioned Fourier transform, then^(th)-order component extraction units 105 b and 105 e each receive theorder n and the rotational angle θm as inputs. In the equations (8), thetime t may be used in place of the rotational angle θm as an integrationvariable. This is because the angle θmf can be substituted for therotational angle θm in calculation performed in the Fourier transform,and the variable can be transformed using the third equation of theequations (5).

The n^(th)-order component extraction unit 105 b receives the rotationalangle difference Δθm as an input to use it as the above-mentionedfunction F(θm), outputs the value bn as the sine value component Δθms(n)of the rotational angle difference Δθm, and outputs the value an as thecosine value component Δθmc(n) of the rotational angle difference Δθm.

The n^(th)-order component extraction unit 105 e receives the outputtorque τe as an input to use it as the above-mentioned function F(θm),outputs the value bn as the sine value component τes(n) of the outputtorque τe, and outputs the value an as the cosine value component τec(n)of the output torque τe.

The proration coefficient multiplication unit 105 c multiplies each ofthe sine value component τvs(n) and the cosine value component τvc(n) bya proration coefficient K(n) set for each order n. The prorationcoefficient multiplication unit 105 f multiplies each of the sine valuecomponent τes(n) and the cosine value component τec(n) by a prorationcoefficient [1−K(n)]. Note that an in equation 0≤K(n)≤1 holds for eachorder n. The proration coefficient multiplication units 105 c and 105 fcan thus be seen as proration units that prorate the sine valuecomponent τvs(n) and the sine value component τes(n) with apredetermined proration rate K(n)/[1−K(n)], and prorate the cosine valuecomponent τvc(n) and the cosine value component τec(n) with theproration rate. The proration coefficients K(n) and [1−K(n)] may beexternally provided for the proration coefficient multiplication units105 c and 105 f. In this case, the proration coefficient multiplicationunits 105 c and 105 f can be achieved by simple multipliers.

The adder 105 g adds, for each order n, the product τvs(n)·K(n) and theproduct τes(n)·[1−K(n)] relating to the sine value components, adds theproduct τvc(n)·K(n) and the product τec(n)·[1−K(n)] relating to thecosine value components, and outputs paired sums.

A plurality of orders n may be used as targets of extraction performedby the n^(th)-order component extraction units 105 b and 105 e. Forexample, when only a value 1 is used as the order n, the adder 105 goutputs one pair of sums τvs(1)·K(1)+τes(1)·[1−K(1)] andτvc(1)·K(1)+τec(1)·[1−K(1)]. Alternatively, when two values 1 and 2 areused as the orders n, the adder 105 g outputs two pairs of sums, thatis, a pair of sums τvs(1)·K(1)+τes(1)·[1−K(1)] andτvc(1)·K(1)+τec(1)·[1−K(1)] and a pair of sumsτvs(2)·K(2)+τes(2)·[1−K(2)] and τvc(2)·K(2)+τec(2)·[1−K(2)]. In FIG. 2,slants “/” attached to arrows each indicate such paired inputs/outputs.

When a sine value component τds(n) and a cosine value component τdc(n)of the load torque τd for the n^(th) order are introduced, equations (9)are obtained from a left equation of the equation (2).τvs(n)=τes(n)−τds(n)τvc(n)=τec(n)−τdc(n)  (9)

The adder 105 g can thus output paired values τes(n)−K(n)·τds(n) andτec(n)−K(n)·τdc(n).

FIG. 6 is a block diagram illustrating the configuration of thecorrection amount calculation unit 105 h. The correction amountcalculation unit 105 h includes a PI control unit 11 h and a compositevalue calculation unit 11 y. A case where the number of orders n is oneis herein shown as an example for simplicity.

The PI control unit 11 h includes PI controllers 11 hs and 11 hc eachperforming proportional integral control. The PI controller 11 hsperforms proportional integral control on a value relating to the sinevalue components. The PI controller 11 hc performs proportional integralcontrol on a value relating to the cosine value components.

FIG. 7 is a block diagram illustrating the configuration of the PIcontroller 11 hs. The PI controller 11 hs includes a proportion unit 11h 1, an integration unit 11 h 2, and an adder 11 h 3. The proportionunit 11 h 1 outputs the product obtained by multiplying an input intothe PI controller 11 hs by a gain Kps(n) set for each order n. Theintegration unit 11 h 2 outputs the product obtained by multiplying anintegral value of the above-mentioned input by a gain Kis(n) set foreach order n. The adder 11 h 3 outputs the sum obtained by adding theabove-mentioned two products.

FIG. 8 is a block diagram illustrating the configuration of the PIcontroller 11 hc. The PI controller 11 hc includes a proportion unit 11h 4, an integration unit 11 h 5, and an adder 11 h 6. The proportionunit 11 h 4 outputs the product obtained by multiplying an input intothe PI controller 11 hc by a gain Kpc(n) set for each order n. Theintegration unit 11 h 5 outputs the product obtained by multiplying anintegral value of the above-mentioned input by a gain Kic(n) set foreach order n. The adder 11 h 6 outputs the sum obtained by adding theabove-mentioned two products.

How to set the gains Kps(n), Kpc(n), Kis(n), and Kic(n) is a matter ofdesign choice, and the proportional integral control itself is knowntechnology, so that further detailed description is omitted herein.

The PI controller 11 hs receives the value τes(n)−K(n)·τds(n) as aninput, and outputs a result obtained by performing the proportionalintegral control thereon. The PI controller 11 hc receives the valueτec(n)−K(n)·τdc(n) as an input, and outputs a result obtained byperforming the proportional integral control thereon.

The composite value calculation unit 11 y obtains a composite value bycombining the result of the proportional integral control relating tothe sine value components obtained by the PI controller 11 hs and theresult of the proportional integral control relating to the cosine valuecomponents obtained by the PI controller 11 hc in the following manner.

The composite value calculation unit 11 y includes multipliers 11 j, 11k, and 11 p, a sine value generation unit 11 q, a cosine valuegeneration unit 11 r, and an adder 11 s.

The multiplier 11 p receives the order n and the rotational angle θm asinputs, and obtains the product n·θm of them. The sine value generationunit 11 q receives the product n·θm as an input, and obtains a sinevalue sin(n·θm). The cosine value generation unit 11 r receives theproduct n·θm as an input, and obtains a cosine value cos(n·θm).

The multiplier 11 j obtains the product of the result obtained by the PIcontroller 11 hs and the sine value sin(n·θm). The multiplier 11 kobtains the product of the result obtained by the PI controller 11 hcand the cosine value cos(n·θm). The adder 11 s obtains the compositevalue by combining the trigonometric functions. Specifically, the adder11 s obtains the composite value as the sum of the product obtained bythe multiplier 11 j and the product obtained by the multiplier 11 k. Thecomposite value is output from the composite value calculation unit 11 yas the first γc-axis current correction value Δiγc1. This corresponds toobtaining, using the results obtained by the PI controllers 11 hs and 11hc as coefficients of a Fourier series, the first γc-axis currentcorrection value Δiγc1 from a result of the Fourier series.

As described above, by obtaining the first γc-axis current correctionvalue Δiγc1 on the basis of the n^(th)-order components of the vibrationtorque τv and the output torque τe, and subtracting the first γc-axiscurrent correction value Δiγc1 from the γc-axis current iγc, thesubtractor 109 eventually corrects the rotational speed command ωeo* sothat the rotational speed command ωeo* increases with increasingvibration torque τv and/or increasing output torque τe. As describedabove, the first γc-axis current correction value Δiγc1 is obtained byperforming the proportional integral control on the ripple of thevibration torque τv and the output torque τe, and thus the correctedrotational speed command ωe* is controlled to suppress the ripple of thevibration torque τv and the output torque τe.

Before the correction amount calculation unit 105 h performs theproportional integral control, the effect of the vibration torque τv andthe output torque τe on the rotational speed command ωeo* is proratedwith the proration coefficients K(n) and [1−K(n)]. This is preferablenot only from the viewpoint of being capable of maintaining theproration rate regardless of the gain in the proportional integralcontrol but also from the viewpoint of not requiring a frequency bandaccording to the rotational speed of the mechanical angle in theproportional integral control.

When a plurality of orders n are set, the correction amount calculationunit 105 h includes the PI control unit 11 h and the composite valuecalculation unit 11 y excluding the adder 11 s for each order. The adder11 s adds all the outputs of the composite value calculation units flyset for respective orders, and outputs the added outputs as the firstγc-axis current correction value Δiγc1.

Assume that the proration coefficient K(n) is one for the n^(th) order.In this case, an output of the proration coefficient multiplication unit105 f is zero, and the output torque τe does not contribute to the firstγc-axis current correction value Δiγc1 and only the vibration torque τvcontributes to correction of the rotational speed command ωeo*. In thiscase, correction of the rotational speed command ωeo* contributes mainlyto suppression of the vibration torque τv.

Assume that the proration coefficient K(n) is zero for the n^(th) order.In this case, an output of the proration coefficient multiplication unit105 c is zero, and the vibration torque τv does not contribute to thefirst γc-axis current correction value Δiγc1 and only the output torqueto contributes to correction of the rotational speed command ωeo*. Inthis case, correction of the rotational speed command ωeo* contributesmainly to suppression of the ripple of the output torque τe, making iteasy to maintain the amplitude of the current [I] constant.

It can be seen from the above-mentioned description that the effect ofsuppressing the vibration torque τv through correction of the rotationalspeed command ωeo* can be obtained even if the adder 105 g, the outputtorque extraction unit 105B, and the proration coefficientmultiplication unit 105 c are omitted from the γc-axis currentcorrection unit 105, and the correction amount calculation unit 105 hobtains the first γc-axis current correction value Δiγc1 using the sinevalue component τvs(n) and the cosine value component τvc(n) (morespecifically, by performing the proportional integral control thereon)without using the sine value component τes(n) and the cosine valuecomponent τec(n).

Similarly, it can be seen that the effect of suppressing the ripple ofthe output torque τe through correction of the rotational speed commandωeo* can be obtained even if the adder 105 g, the vibration torqueextraction unit 105A, and the proration coefficient multiplication unit105 f are omitted from the γc-axis current correction unit 105, and thecorrection amount calculation unit 105 h obtains the first γc-axiscurrent correction value Δiγc1 using the sine value component τes(n) andthe cosine value component τec(n) (more specifically, by performing theproportional integral control thereon) without using the sine valuecomponent τvs(n) and the cosine value component τvc(n).

Second Embodiment

In the present embodiment, technology for improving the efficiency ofthe synchronous motor 3 using the first γc-axis current correction valueΔiγc1 is described. A case where a vibration of a fundamental frequencyof the vibration torque τv is suppressed in the first embodiment isconsidered. As described above, the fundamental frequency of thevibration torque τv corresponds to the equation n=1 when the mechanicalload is the one-cylinder compressor, and corresponds to the equation n=2when the mechanical load is the two-cylinder compressor. First,description will be made on the assumption that the mechanical load isthe one-cylinder compressor for simplicity.

In the first embodiment, the 1^(st)-order component of the fundamentalfrequency (hereinafter, referred to as a “fundamental wave component”)of the vibration torque τv is suppressed by using the vibration torqueextraction unit 105A and the output torque extraction unit 105B, andusing only the value 1 as the order n. In particular, the fundamentalwave component of the vibration torque τv almost disappears by settingK(1) to one.

However, the ripple of a component other than the component of thefundamental frequency of the output torque τe is not necessarilysuppressed. On the other hand, the ripple can be the origin of aharmonic component of the current flowing through the synchronous motor3. The efficiency of the synchronous motor 3 deteriorates withincreasing number of harmonic components flowing through the synchronousmotor 3. The efficiency of the synchronous motor 3 is thus improved bysuppressing the ripple of the output torque τe. Note that thefundamental wave component of the vibration torque τv is suppressed asdescribed above. Thus, in the present embodiment, the ripple of theoutput torque τe is suppressed for an order other than the order of thefundamental wave component to improve the efficiency of the synchronousmotor 3.

FIG. 9 is a block diagram illustrating the configuration of the γc-axiscurrent correction unit 105 used in the present embodiment. The γc-axiscurrent correction unit 105 includes the vibration torque extractionunit 105A, the output torque extraction unit 105B, the adder 105 g, andthe correction amount calculation unit 105 h as in the first embodiment.The configuration of the correction amount calculation unit 105 h in thepresent embodiment will be described in details below.

The vibration torque extraction unit 105A, the output torque extractionunit 105B, and the adder 105 g have similar configuration to that in thefirst embodiment. Note that the symbol “n” representing the order inFIG. 2 is replaced, in FIG. 9, by a symbol “j” representing the order,as a case where j^(th)-order components of various amounts are extractedis shown herein. An equation j=1 holds when the mechanical load is theone-cylinder compressor, and an equation j=2 holds when the mechanicalload is the two-cylinder compressor. A plurality of orders j cannaturally be used to suppress the vibration torque τv for the pluralityof orders. Such suppression for the plurality of orders is described inthe first embodiment, and thus description thereof is omitted herein.

That is to say, a j^(th)-order component extraction unit 105 b extracts,from the rotational angle difference Δθm, vibration torque suppressioncomponents Δθms(j) and Δθmc(j) as components for at least one orderincluding the 1^(st)-order components of the fundamental frequency ofthe vibration torque τv. A j^(th)-order component extraction unit 105 eextracts, from the output torque (to be exact, an estimated valuethereof) τe, components τes(j) and τec(j) for the j^(th) ordercorresponding to the vibration torque suppression components Δθms(j) andΔθmc(j).

In the present embodiment, the γc-axis current correction unit 105further includes an m^(th)-order component extraction unit 105 m. Them^(th)-order component extraction unit 105 m has similar configurationto the j^(th)-order component extraction unit 105 e, and extractsm^(th)-order components τes(m) and τec(m) from the output torque (to beexact, the estimated value thereof) τe. The order m, however, is atleast one order used from among orders other than the order jcorresponding to the vibration torque suppression components Δθms(j) andΔθmc(j).

Description will be made below by taking, as an example, a case whereequations j=1 and m=2, 3 hold for simplicity. FIG. 10 is a block diagramillustrating the configuration of the correction amount calculation unit105 h in the present embodiment. The correction amount calculation unit105 h includes three PI control units 11 h, the composite valuecalculation unit 11 y, two composite value calculation units 11 y 1, andan adder 11 t.

The PI control unit 11 h at the top of FIG. 10 and the composite valuecalculation unit 11 y have similar configuration to that in thecorrection amount calculation unit 105 h shown in the first embodiment.They, however, herein function to correspond to the vibration torquesuppression components Δθms(1) and Δθmc(1), and the PI control unit 11 hreceives values τes(1)−K(1)·τds(1) and τec(1)−K(1)·τdc(1) as inputs.While a value 1 representing the order j is input into the compositevalue calculation unit 11 y, and is multiplied by the rotational angleθm by the multiplier 11 p, it is obvious that the multiplier 11 p may beomitted when the order j is 1.

The PI control unit 11 h at the middle of FIG. 10 receives values τes(2)and τec(2) as inputs. The PI control unit 11 h at the bottom of FIG. 10receives values τes(3) and τec(3) as inputs. That is to say, them^(th)-order component extraction unit can be seen as an apparentmodification of the configuration of the output torque extraction unit105B in the first embodiment, other than the output torque estimationunit 105 d, obtained by setting the proration coefficient K(m) to zerofor the m^(th) order. The m^(th)-order components τes(m) and τec(m) canthus be understood as output torque suppression components forsuppressing the output torque for the m^(th) order.

The composite value calculation units 11 y 1 each have the configurationof the composite value calculation unit 11 y from which the adder 11 shas been omitted, and the multipliers 11 p, 11 j, and 11 k, the sinevalue generation unit 11 q, and the cosine value generation unit 11 r ineach of them have the same functions as those shown in the firstembodiment.

The adders 11 s and 11 t each receive the sum of the output of themultiplier 11 j and the output of the multiplier 11 k for acorresponding one of the orders 1, 2, and 3, and output it as the firstγc-axis current correction value Δiγc1. This means that, in the presentembodiment, the γc-axis current correction unit 105 obtains the firstγc-axis current correction value Δiγc1 using the sum obtained by theadder 105 g and the output torque suppression components τes(m) andτec(m) obtained by the m^(th)-order component extraction unit 105 m. Itis obvious from the description in the first embodiment that the firstγc-axis current correction value Δiγc1 thus obtained contributes tosuppression of the ripple of the m^(th)-order components of the outputtorque τe in correction of the rotational speed command ωeo*.

As described above, the j^(th)-order components of the vibration torqueτv and the m^(th)-order (m≠j) components of the output torque τe can besuppressed in the present embodiment.

The composite value calculation unit 11 y at the top of FIG. 10 may bereplaced by the composite value calculation unit 11 y 1, and the adder11 t may further have the function of the adder 11 s.

The output torque suppression components τes(m) and τec(m) are notprorated with the m^(th)-order components of the vibration torque τv,and thus may individually be amplified for each order before being inputinto the correction amount calculation unit 105 h. Similarly, theoutputs of the adder 105 g may individually be amplified for each orderin the first embodiment. In other words, proration coefficientsC(n)·K(n) and C(n)·[1−K(n)] (note that C(n) is a positive number foreach order n) may be used in place of the proration coefficients K(n)and [1−K(n)]. It is obvious that the proration rate K(n)/[1−K(n)] ismaintained in such a case.

Third Embodiment

In the present embodiment, technology for suppressing a peak value of acurrent flowing through the synchronous motor 3 (hereinafter, referredto as a “motor current”) using the first γc-axis current correctionvalue Δiγc1 is described. The case where the vibration of thefundamental frequency of the vibration torque τv is suppressed in thefirst embodiment is considered. As described above, the fundamentalfrequency of the vibration torque τv corresponds to the equation n=1when the mechanical load is the one-cylinder compressor, and correspondsto the equation n=2 when the mechanical load is the two-cylindercompressor. First, description will be made on the assumption that themechanical load is the one-cylinder compressor for simplicity.

In the first embodiment, the fundamental wave components of thevibration torque τv and the output torque τe are suppressed by using thevibration torque extraction unit 105A and the output torque extractionunit 105B, and using only the value 1 as the order n. The ripple of thevibration torque τv and the output torque τe is caused mainly by thefundamental wave components thereof, and thus suppression of thefundamental wave components is important.

In a case where the first γc-axis current correction value Δiγc1required to suppress the fundamental wave components of the vibrationtorque τv is obtained, however, the peak value of the motor current canincrease. Control to limit the peak value of the motor current (e.g.,control to set the upper limits of the δc-axis voltage command value vδ*and the γc-axis voltage command value vγ* shown in FIG. 1 in themagnetic flux control unit 102) is usually used in many cases from theviewpoint of overcurrent protection.

It is thus desirable to decrease the peak value of the motor current sothat suppression of the fundamental wave components of the vibrationtorque τv is not impaired by the control to limit the peak value of themotor current. In the present embodiment, technology for reducing thepeak of the sum of the n^(th)-order components τes(n) and τec(n) for then^(th) order while maintaining fundamental wave components τes(1) andτec(1) of the output torque to is shown.

In a case where the peak of the sum of the n^(th)-order componentsτes(n) and τec(n) for the n^(th) order is reduced, a waveform of the sumof components for the odd order can show a rectangular wave if the valueof the order n does not have an upper limit. When the amplitude of therectangular wave is assumed to be one, the rectangular wave is expressedby an equation (10) shown below if an upper limit value D is set toinfinity in a function R(Ψ) of a phase Ψ. Note that an odd number d isintroduced, and the symbol Σ herein indicates the sum for the odd numberd.

$\begin{matrix}{{R(\Psi)} = {\frac{4}{\pi}{\sum\limits_{d = 1}^{D}{\frac{1}{d} \cdot {\sin\left( {d \cdot \Psi} \right)}}}}} & (10)\end{matrix}$

Thus, in the present embodiment, as for an odd-order component of theoutput torque τe for the odd order d equal to or greater than a 3^(rd)order, a command value of the odd-order component (hereinafter, referredto as an “odd-order torque command”) in view of reduction of theabove-mentioned peak value is obtained. The first γc-axis currentcorrection value Δiγc1 is obtained also based on a difference betweenthe odd-order component and the odd-order torque command.

On the other hand, as for a higher-order component of the output torqueτe for the even order, a sine value component τes(e) and a cosine valuecomponent τec(e) thereof (introducing an even number e) are extracted tobe used for calculation to obtain the first γc-axis current correctionvalue Δiγc1 by assuming that an equation K(e)=0 holds in line with thefirst embodiment.

FIG. 11 is a block diagram illustrating the configuration of the γc-axiscurrent correction unit 105 used in the present embodiment. The γc-axiscurrent correction unit 105 includes the angular ripple extraction unit105 a, the n^(th)-order component extraction units 105 b and 105 e, thetorque conversion unit 105 i, the proration coefficient multiplicationunits 105 c and 105 f, the output torque estimation unit 105 d, theadder 105 g, and the correction amount calculation unit 105 h as in thefirst embodiment. The configuration of the correction amount calculationunit 105 h in the present embodiment will be described in details below.

In the present embodiment, however, the n^(th)-order componentextraction units 105 b and 105 e each extract only the fundamental wavecomponents. Specifically, the n^(th)-order component extraction unit 105b extracts the fundamental wave components Δθms(1) and Δθmc(1) of therotational angle θm from the rotational angle difference Δθm. Thisallows the torque conversion unit 105 i to output a sine value componentτvs(1) and a cosine value component τvc(1) of the fundamental wavecomponents of the vibration torque τv, and the proration coefficientmultiplication unit 105 c multiplies each of them by a prorationcoefficient K(1). For this reason, the n^(th)-order component extractionunit 105 b is shown as a “fundamental wave component extraction unit” inFIG. 11.

Similarly, the n^(th)-order component extraction unit 105 e extracts thesine value component τes(1) and the cosine value component τec(1) of thefundamental wave components of the output torque τe (to be exact, theestimated value thereof). The proration coefficient multiplication unit105 f multiplies each of them by a proration coefficient [1−K(1)]. Forthis reason, the n^(th)-order component extraction unit 105 e is shownas a “fundamental wave component extraction unit” in FIG. 11.

From the above-mentioned description, in the present embodiment, then^(th)-order component extraction unit 105 b, the torque conversion unit105 i, the proration coefficient multiplication unit 105 c, then^(th)-order component extraction unit 105 e, the proration coefficientmultiplication unit 105 f, and the adder 105 g can be considered as afundamental wave component proration unit 105C that extracts thefundamental wave components of each of the vibration torque τv and theoutput torque τe, and prorates them with a predetermined proration rate(K(1)/[1−K(1)]).

In a case where the ripple of the vibration torque τv is not suppressed,the angular ripple extraction unit 105 a, the n^(th)-order componentextraction unit 105 b, the torque conversion unit 105 i, the prorationcoefficient multiplication unit 105 c, and the adder 105 g can beomitted by assuming that an equation K(1)=0 holds. This means that, inthe present embodiment, the vibration torque τv including thefundamental wave components thereof are not necessarily extracted.

The γc-axis current correction unit 105 further includes an outputtorque even-order output unit 105D and an output torque odd-order outputunit 105E.

The output torque even-order output unit 105D obtains even-ordercomponents, which are components for the even order e, of the outputtorque τe, and outputs them to the correction amount calculation unit105 h. The output torque odd-order output unit 105E obtains differencesbetween odd-order components of the output torque and odd-order torquecommands, and outputs them to the correction amount calculation unit 105h.

Specifically, the output torque even-order output unit 105D includes aneven-order component extraction unit 105 p. The even-order componentextraction unit 105 p receives the rotational angle θm, the outputtorque τe (to be exact, the estimated value thereof: obtained from theoutput torque estimation unit 105 d), and the even order e as inputs,and obtains the sine value component τes(e) and the cosine valuecomponent τec(e) as components (output torque even-order suppressioncomponents) for suppressing the output torque for the even order. Theeven-order component extraction unit 105 p has similar configuration tothat of the n^(th)-order component extraction unit 105 e described inthe first embodiment, and differs from the n^(th)-order componentextraction unit 105 e only in that the order n as input is limited tothe even order e. The sine value component τes(e) and the cosine valuecomponent τec(e) are used as the above-mentioned even-order components.

A plurality of orders e may be used. In this case, a plurality ofeven-order component extraction units 105 p may be provided in theoutput torque even-order output unit 105D for respective orders e.

The output torque odd-order output unit 105E includes an odd-ordercomponent extraction unit 105 q, an odd-order torque command generationunit 105 r, and a subtractor 105 s.

The odd-order component extraction unit 105 q receives the rotationalangle θm, the output torque τe, and the odd order d equal to or greaterthan the 3^(rd) order as inputs, and obtains a sine value componentτes(d) and a cosine value component τec(d) as components (output torqueodd-order suppression components) for suppressing the output torque forthe odd order. The odd-order component extraction unit 105 q also hassimilar configuration to that of the n^(th)-order component extractionunit 105 e described in the first embodiment, and differs from then^(th)-order component extraction unit 105 e only in that the order n asinput is limited to the odd order d equal to or greater than the 3^(rd)order.

The odd-order torque command generation unit 105 r obtains a commandvalue (hereinafter, referred to as an “odd-order torque command sinevalue component”) τes*(d) of the sine value component τes(d) and acommand value (hereinafter, referred to as an “odd-order torque commandcosine value component”) τec*(d) of the cosine value component τec(d).Details thereof will be described below.

The subtractor 105 s obtains a deviation Δτes(d) of the sine valuecomponent τes(d) from the odd-order torque command sine value componentτes*(d) and a deviation Δτec(d) of the cosine value component τec(d)from the odd-order torque command cosine value component τec*(d).Specifically, equations Δτes(d)=τes(d)−τes*(d) andΔτec(d)=τec(d)−τec*(d) hold.

A plurality of orders d may be used. In this case, a plurality ofodd-order component extraction units 105 q, a plurality of odd-ordertorque command generation units 105 r, and a plurality of subtractors105 s may be provided in the output torque odd-order output unit 105Efor respective orders d.

Description will be made below by taking, as an example, a case whereequations d=3 and e=2 hold for simplicity. FIG. 12 is a block diagramillustrating the configuration of the correction amount calculation unit105 h in the present embodiment. The correction amount calculation unit105 h includes the three PI control units 11 h, the composite valuecalculation unit 11 y, the two composite value calculation units 11 y 1,and the adder 11 t. The configuration shown herein itself is the same asthe configuration shown in FIG. 10.

However, inputs into the PI control unit 11 h at the bottom differ fromthose in the second embodiment, and deviations Δτes(3) and Δτec(3) arerespectively input into the PI controllers 11 hs and 11 hc. Theconfiguration other than the inputs is similar to that in the secondembodiment, and the first γc-axis current correction value Δiγc1 isobtained also in the present embodiment.

While the order 1 is input into the composite value calculation unit 11y, and is multiplied by the rotational angle θm by the multiplier 11 p,it is obvious that the multiplier 11 p can be omitted.

FIG. 13 is a block diagram illustrating the configuration of theodd-order torque command generation unit 105 r. The odd-order torquecommand generation unit 105 r includes an amplitude computing unit 1051,a phase computing unit 1052, multipliers 1053, 1054, 1057, and 1058, acosine value generation unit 1055, and a sine value generation unit1056.

The amplitude computing unit 1051 obtains a magnitude Te of fundamentalwave components τe(1) of the output torque τe. The phase computing unit1052 obtains a phase α of the output torque τe relative to therotational angle θm. Specifically, an equation (11) holds, and thus themagnitude Te and the phase α are obtained by equations (12).

$\begin{matrix}\begin{matrix}{{\tau\;{e(1)}} = {{\tau\;{{{es}(1)} \cdot \sin}\;\theta\; m} + {\tau\;{{{ec}(1)} \cdot \cos}\;\theta\; m}}} \\{= {{Te} \cdot {\sin\left( {{\theta\; m} + \alpha} \right)}}}\end{matrix} & (11) \\{{\alpha = {\tan^{- 1}\frac{\tau\;{ec}(1)}{\tau\;{{es}(1)}}}},{{Te} = \sqrt{{\tau\;{{es}(1)}^{2}} + {\tau\;{{ec}(1)}^{2}}}}} & (12)\end{matrix}$

That is to say, the phase α is obtained as a value of an arctangentfunction of a value obtained by dividing the cosine value componentτec(1) by the sine value component τes(1), and the magnitude Te isobtained as a square root of the sum of the square of the sine valuecomponent τes(1) and the square of the cosine value component τec(1).

When an angle (θm+α) is 0 degrees, 180 degrees, and 360 degrees (seealso FIGS. 14 and 16 described below), the output torque for the oddorder always takes a value 0, and thus a sum τea of the output torquefor the odd order (excluding the 1^(st)-order components as thefundamental wave components) is expressed by an equation (13). Note thatthe upper limit value D is equal to that in the equation (10).

$\begin{matrix}\begin{matrix}{{\tau\;{ea}} = {\sum\limits_{d = 3}^{D}{{{g(d)} \cdot {Te} \cdot \sin}\left\{ {d \cdot \left( {{\theta\; m} + \alpha} \right)} \right\}}}} \\{= {\sum\limits_{d = 3}^{D}\left\lbrack {{\tau\;{es}*{(d) \cdot {\sin\left( {{d \cdot \theta}\; m} \right)}}} + {\tau\;{ec}*{(d) \cdot {\cos\left( {{d \cdot \theta}\; m} \right)}}}} \right\rbrack}}\end{matrix} & (13)\end{matrix}$

The peak of the sum tea can be reduced by setting a coefficient g(d) inthe first equation of the right-hand side of the equation (13) on thebasis of the order d and the upper limit value D. Specifically, if theupper limit value D is set to infinity, the coefficient g(d) should beset to 1/d of a coefficient g(1) with reference to the equation (10).The peak of the sum τea can thereby be a minimum value thereof. Assumethat an equation g(1)=1 holds in the following description unlessotherwise noted.

On the other hand, the sum τea can be rewritten to the second equationof the right-hand side of the equation (13) by introducing the odd-ordertorque command sine value component τes*(d) and the odd-order torquecommand cosine value component τec*(d). The odd-order torque commandsine value component τes*(d) and the odd-order torque command cosinevalue component τec*(d) can thus be obtained by equations (14):τes*(d)=g(d)·Te·cos(d·α),τec*(d)=g(d)·Te·sin(d·α)  (14)

Calculation in the equations (14) is achieved by the odd-order torquecommand generation unit 105 r in the following manner. The multiplier1053 multiplies the coefficient g(d) and the magnitude Te for each orderd to obtain the product g(d)·Te. The multiplier 1054 multiplies theorder d and the phase α for each order d to obtain the product d·α.

The cosine value generation unit 1055 obtains a cosine value cos(d·α) ofthe product d·α for each order d, and the sine value generation unit1056 obtains a sine value sin(d·α) of the product d·α for each order d.The multiplier 1057 multiplies the product g(d)·Te and the cosine valuecos(d·α) for each order d to obtain the odd-order torque command sinevalue component τes*(d). The multiplier 1058 multiplies the productg(d)·Te and the sine value sin(d·α) for each order d to obtain theodd-order torque command cosine value component τec*(d).

FIG. 14 is a graph showing a first example of the waveforms of theodd-order components of the output torque in the third embodiment. FIG.15 is a graph showing the waveform of the sum of the odd-ordercomponents shown in FIG. 14. In this first example, the upper limitvalue D is set to an odd number 3. In the case of the first example, thepeak of the waveform of the sum of the odd-order components is minimizedby setting a coefficient g(3) to ⅙.

FIG. 16 is a graph showing a second example of the waveforms of theodd-order components of the output torque in the third embodiment. FIG.17 is a graph showing the waveform of the sum of the odd-ordercomponents shown in FIG. 16. In this second example, the upper limitvalue D is set to an odd number 5. In the case of the second example,the peak of the waveform of the sum of the odd-order components isminimized by setting the coefficient g(3) to 0.232 and a coefficientg(5) to 0.06.

In each of the first and second examples, the peak of the fundamentalwave components τe(1) is drawn to be 1. It can be seen that, in each ofthe first and second examples, the waveform of the sum of the odd-ordercomponents has a smaller peak than that of the fundamental wavecomponents τe(1). In view of the equation (10), it can be seen that thepeak of the waveform approaches a value (π/4) as the upper limit value Dincreases, in line with FIGS. 14 to 16.

As described above, the 1^(st)-order component of the vibration torqueτv can be suppressed, and the peak of the output torque to can besuppressed.

The composite value calculation unit 11 y at the top of FIG. 12 may bereplaced by the composite value calculation unit 11 y 1, and the adder11 t may further have the function of the adder 11 s as in the secondembodiment.

The sine value component τes(e) and the cosine value component τec(e)for the even order, the sine value component τes(d) and the cosine valuecomponent τec(d) for the odd order, and the odd-order torque commandsine value component τes*(d) and the odd-order torque command cosinevalue component τec*(d) are not prorated with the vibration torque τv,and thus may individually be amplified for each order before being inputinto the correction amount calculation unit 105 h.

Fourth Embodiment

In some cases, there is no need to reduce the ripple of the outputtorque τe for the even order in the third embodiment. In this case, theoutput torque even-order output unit 105D can be omitted from theconfiguration shown in the third embodiment.

FIG. 18 is a block diagram illustrating the configuration of the γc-axiscurrent correction unit 105 used in the present embodiment. The γc-axiscurrent correction unit 105 includes the angular ripple extraction unit105 a, the output torque estimation unit 105 d, the correction amountcalculation unit 105 h, the fundamental wave component proration unit105C, and the output torque odd-order output unit 105E as in the thirdembodiment. The output torque even-order output unit 105D, however, isnot included as described above.

FIG. 19 is a block diagram illustrating the configuration of thecorrection amount calculation unit 105 h in the present embodiment. Thecorrection amount calculation unit 105 h includes the composite valuecalculation unit 11 y, the composite value calculation unit 11 y 1, theadder 11 t, and the two PI control units 11 h shown in the thirdembodiment. In contrast to the third embodiment, however, the sine valuecomponent τes(e) and the cosine value component τec(e) for the evenorder are not dealt with in the present embodiment. Thus, one of the PIcontrol units 11 h and the composite value calculation unit 11 y 1obtain the composite value from deviations for the odd order, herein thedeviations Δτes(3) and Δτec(3) for the 3^(rd) order, in the presentembodiment.

In the present embodiment, the correction amount calculation unit 105 hdoes not deal with the sine value component τes(e) and the cosine valuecomponent τec(e) for the even order. Thus, there is no need to input theeven order e into the correction amount calculation unit 105 h (see FIG.18).

The effect of reducing the peak value of the motor current can beobtained also in the present embodiment as in the third embodiment.

Fifth Embodiment

In the present embodiment, in contrast to the third embodiment,technology for reducing the peak value of the motor current throughcontrol using components for the even order while reducing the ripple ofthe output torque τe for the odd order is described.

FIG. 20 is a block diagram illustrating the configuration of the γc-axiscurrent correction unit 105 used in the present embodiment. The γc-axiscurrent correction unit 105 includes the angular ripple extraction unit105 a, the output torque estimation unit 105 d, the correction amountcalculation unit 105 h, and the fundamental wave component prorationunit 105C as in the third embodiment. In the present embodiment,however, the output torque even-order output unit 105D and the outputtorque odd-order output unit 105E in the third embodiment arerespectively replaced by an output torque odd-order output unit 105F andan output torque even-order output unit 105G.

The output torque odd-order output unit 105F includes the odd-ordercomponent extraction unit 105 q. The odd-order component extraction unit105 q is already described in the third embodiment, and thus detailsthereof are omitted herein. The odd-order component extraction unit 105q obtains the sine value component τes(d) and the cosine value componentτec(d) as the components (output torque odd-order suppressioncomponents) for suppressing the output torque for the odd order.

The output torque even-order output unit 105G includes the even-ordercomponent extraction unit 105 p, an even-order torque command generationunit 105 t, and a subtractor 105 u.

The even-order component extraction unit 105 p is already described inthe third embodiment, and thus details thereof are omitted herein. Theeven-order component extraction unit 105 p outputs the sine valuecomponent τes(e) and the cosine value component τec(e).

The even-order torque command generation unit 105 t obtains a commandvalue (hereinafter, referred to as an “even-order torque command sinevalue component”) τes*(e) of the sine value component τes(e) and acommand value (hereinafter, referred to as an “even-order torque commandcosine value component”) τec*(e) of the cosine value component τec(e).Details thereof will be described below.

The subtractor 105 u obtains a deviation Δτes(e) of the sine valuecomponent τes(e) from the even-order torque command sine value componentτes*(e) and a deviation Δτec(e) of the cosine value component τec(e)from the even-order torque command cosine value component τec*(e).Specifically, equations Δτes(e)=τes(e)−τes*(e) andΔτec(e)=τec(e)−τec*(e) hold.

A plurality of orders e may be used. In this case, a plurality ofeven-order component extraction units 105 p, a plurality of even-ordertorque command generation units 105 t, and a plurality of subtractors105 u may be provided in the output torque even-order output unit 105Gfor respective orders e.

Description will be made below by taking, as an example, a case wherethe equations d=3 and e=2 hold for simplicity also in the presentembodiment. FIG. 21 is a block diagram illustrating the configuration ofthe correction amount calculation unit 105 h in the present embodiment.The correction amount calculation unit 105 h includes the three PIcontrol units 11 h, the composite value calculation unit 11 y, the twocomposite value calculation units 11 y 1, and the adder 11 t. Theconfiguration shown herein itself is the same as the configuration shownin FIG. 12.

However, inputs into the PI control units 11 h at the middle and at thebottom differ from those in the third embodiment. In the presentembodiment, components for the odd order are considered for the rippleof the output torque, and components for the even order are consideredfor suppression of the peak value of the motor current. A sine valuecomponent τes(3), a cosine value component τec(3), and deviationsΔτes(2) and Δτec(2) are thus used in place of the deviations Δτes(3) andΔτec(3), the sine value component τes(2), and the cosine value componentτec(2) in the third embodiment, respectively.

FIG. 22 is a block diagram illustrating the configuration of theeven-order torque command generation unit 105 t. The even-order torquecommand generation unit 105 t includes a 0^(th)-order componentextraction unit 1050, the amplitude computing unit 1051, the phasecomputing unit 1052, the multipliers 1054, 1057, and 1058, the cosinevalue generation unit 1055, the sine value generation unit 1056, aneven-order amplitude computing unit 1059, and an adder 1053 b.

The amplitude computing unit 1051, the phase computing unit 1052, themultipliers 1054, 1057, and 1058, the cosine value generation unit 1055,and the sine value generation unit 1056 are already described in thethird embodiment, and thus description thereof is omitted herein.

In the present embodiment, however, the even order e is provided for themultiplier 1054 in place of the odd order d. The multiplier 1054 thusoutputs not the product d·α but the product e·α.

The multiplier 1057 receives a cosine value cos(e·α+k) as an input inplace of the cosine value cos(d·α) shown in the third embodiment. Themultiplier 1058 receives a sine value sin(e≠α+k) as an input in place ofthe sine value sin(d·α) shown in the third embodiment.

In the present embodiment, the cosine value generation unit 1055 and thesine value generation unit 1056 each receive a value (e·α+k) as an inputto obtain the cosine value cos(e·α+k) and the sine value sin(e·α+k). Toobtain the value (e·α+k), the product e·α obtained from the multiplier1054 and a shift amount k are added by the adder 1053 b.

The multipliers 1057 and 1058 each receive a magnitude Te(e) of theeven-order components as an input in place of the product g(d)·Te shownin the third embodiment. In the third embodiment, the product g(d)·Teinput into each of the multipliers 1057 and 1058 is determined by thecoefficient g(d) based on the rectangular wave and the magnitude Te ofthe fundamental wave components τe(1) of the output torque τe. However,suppression of the current using the components for the even order isfurther complicated for a reason described below, and it is necessary toperform calculation also using a 0^(th)-order component τe(0) of theoutput torque τe.

Due to the need for such calculation, the 0^(th)-order componentextraction unit 1050 and the even-order amplitude computing unit 1059are provided for the even-order torque command generation unit 105 t.The 0^(th)-order component extraction unit 1050 extracts the0^(th)-order component τe(0) from the output torque τe as a constantcomponent thereof. The extraction itself is achieved by knowntechnology, and thus description thereof is omitted.

FIG. 23 is a graph showing components of the output torque when only theequation e=2 holds for the even order e. A magnitude of 2^(nd)-ordercomponents τe(2) of the output torque τe required to reduce the peakvalue of the motor current are dependent on a waveform of the sum of the0^(th)-order component τe(0) and the fundamental wave components τe(1)of the output torque τe. The 2^(nd)-order components τe(2) vary to havethe same magnitude Te(2) in positive and negative directions from avalue 0. On the other hand, the above-mentioned sum (τe(0)+τe(1)) isasymmetric in the positive and negative directions. It is thus necessaryto determine the magnitude Te(2) so that each of the absolute value of amaximum value (in the positive direction) and the absolute value of aminimum value (in the negative direction) of the sum (τe(0)+τe(1)+τe(2))is smaller than a greater one of the absolute value of a maximum value(in the positive direction) and the absolute value of a minimum value(in the negative direction) of the sum (τe(0)+τe(1)).

In FIG. 23, the greater one of the absolute value (approximately 2.2) ofthe maximum value (in the positive direction) and the absolute value(approximately 0.2) of the minimum value (in the negative direction) ofthe sum (τe(0)+τe(1)) is the absolute value of the maximum value (in thepositive direction), and each of the absolute value (approximately 1.85)of the maximum value (in the positive direction) and the absolute value(approximately 0.6) of the minimum value (in the negative direction) ofthe sum (τe(0)+τe(1)+τe(2)) is smaller than the absolute value of themaximum value (in the positive direction) of the sum (τe(0)+τe(1)).

As obvious from FIG. 23, however, the sum (τe(0)+τe(1)) swings greaterin the positive direction, and thus a phase in which the 2^(nd)-ordercomponents τe(2) take a local minimum value is required to match a phasein which the sum (τe(0)+τe(1)) takes a local maximum value. Thus, avalue π/2 is used as the above-mentioned shift amount k when theequation e=2 holds.

FIG. 24 is a graph showing an upper limit of the magnitude Te(2), and amagnitude Te(0) of the 0^(th)-order component τe(0) is expressed on thehorizontal axis using the magnitude Te. An inequation 0≤Te(0)≤(¼)·Te issatisfied in an area (I), an inequation (¼)·Te≤Te(0)≤((4−√2)/8)·Te issatisfied in an area (II), and an inequation ((4−√2)/8)·Te≤Te(0) issatisfied in an area (III). In the area (I), the upper limit of themagnitude Te(2) is equal to the magnitude Te(0). In the area (III), theupper limit of the magnitude Te(2) is equal to a magnitude Te/2√2. Inthe area (II), the upper limit of the magnitude Te(2) is a function ofthe magnitudes Te(0) and Te, and is Te·Te/(8(Te−2·Te(0))).

When the magnitude Te(2) is equal to or smaller than the upper limitdescribed above, a degree of suppression of the peak value of the motorcurrent becomes conspicuous as the magnitude Te(2) increases, but, whenthe magnitude Te(2) takes a value greater than the upper limit, the peakvalue of the motor current may not be suppressed. It is thus desirablethat the magnitude Te(2) take the upper limit. As described above, themagnitude Te(2) is obtained by the even-order amplitude computing unit1059.

In FIG. 23, since equations Te=1.2 and Te(0)=1.0 hold, and theconditions shown on the area (III) are satisfied, an equationTe(2)=Te/2√2 (approximately 0.43) is used.

It is desirable that the shift amount k take the value π/2 when anequation e=2, 6, 10, . . . holds, and take a value 3π/2 when an equatione=4, 8, 12, . . . holds.

The output torque τe often satisfies the conditions on the area (III).Thus, configuration other than the configuration shown in FIG. 22 may beused as the configuration of the even-order torque command generationunit 105 t.

FIG. 25 is a block diagram showing the other configuration of theeven-order torque command generation unit 105 t. The configurationdiffers from the configuration of FIG. 22 only in that the even order e(e=2) is input, and the multiplier 1053 that uses a coefficient ½√2 as amultiplier is used in place of the 0^(th)-order component extractionunit 1050 and the even-order amplitude computing unit 1059, and thusdetailed description thereof is omitted.

It is desirable to use (¼)·cos(3π/8) as the coefficient if an equatione=4 holds.

Sixth Embodiment

In some cases, there is no need to reduce the ripple of the outputtorque to for the odd order in the fifth embodiment. In this case, theoutput torque odd-order output unit 105F can be omitted from theconfiguration shown in the fifth embodiment.

FIG. 26 is a block diagram illustrating the configuration of the γc-axiscurrent correction unit 105 used in the present embodiment. The γc-axiscurrent correction unit 105 includes the angular ripple extraction unit105 a, the output torque estimation unit 105 d, the correction amountcalculation unit 105 h, the fundamental wave component proration unit105C, and the output torque even-order output unit 105G as in the fifthembodiment. The output torque odd-order output unit 105F, however, isnot included as described above.

FIG. 27 is a block diagram illustrating the configuration of thecorrection amount calculation unit 105 h in the present embodiment. Thecorrection amount calculation unit 105 h includes the composite valuecalculation unit 11 y, the composite value calculation unit 11 y 1, theadder 11 t, and the two PI control units 11 h shown in the fifthembodiment. In contrast to the fifth embodiment, however, the sine valuecomponent τes(d) and the cosine value component τec(d) for the odd orderare not dealt with in the present embodiment. Thus, one of the PIcontrol units 11 h and the composite value calculation unit 11 y 1obtain the composite value from deviations for the even order, hereinthe deviations Δτes(2) and Δτec(2) for the 2^(nd) order, in the presentembodiment.

In the present embodiment, the correction amount calculation unit 105 hdoes not deal with the sine value component τes(d) and the cosine valuecomponent τec(d) for the odd order. Thus, there is no need to input theodd order d into the correction amount calculation unit 105 h (see FIG.26).

The effect of reducing the peak value of the motor current can beobtained also in the present embodiment as in the fifth embodiment.

Seventh Embodiment

In the sixth embodiment, the even-order components of the output torqueτe are considered to reduce the peak value of the motor current.Furthermore, the odd-order components of the output torque τe can beconsidered for the same purpose.

FIG. 28 is a block diagram illustrating the configuration of the γc-axiscurrent correction unit 105 used in the present embodiment. The γc-axiscurrent correction unit 105 includes the angular ripple extraction unit105 a, the output torque estimation unit 105 d, the correction amountcalculation unit 105 h, the fundamental wave component proration unit105C, and the output torque even-order output unit 105G as in the sixthembodiment. In the present embodiment, the γc-axis current correctionunit 105 further includes the output torque odd-order output unit 105E(see the fourth embodiment).

FIG. 29 is a block diagram illustrating the configuration of thecorrection amount calculation unit 105 h in the present embodiment. Theconfiguration differs from the configuration shown in FIG. 21 only inthat the deviations Δτes(3) and Δτec(3) are input in place of the sinevalue component τes(3) and the cosine value component τec(3).

The effect of reducing the peak value of the motor current can beobtained also with such configuration as in the fifth embodiment.

However, the situation is further complicated to improve the peak valueof the motor current by the interaction between the odd-order componentsand the even-order components.

FIG. 30 is a graph showing components of the output torque when only theequations e=2 and d=3 are used in the present embodiment. Due to thepresence of the 2^(nd)-order components τe(2) of the output torque τe, aphase in which 3rd-order components τe(3) of the output torque τe, whichare required to reduce the peak value of the motor current, take a localmaximum value matches a phase in which the fundamental wave componentsτe(1) take a local maximum value, in contrast to a case shown in FIG.14.

When an inequation Te(0)≥K2·Te holds, the magnitude Te(2) of the2^(nd)-order components τe(2) and a magnitude Te(3) of the 3^(rd)-ordercomponents τe(3) are calculated by the following equations (15) and(16):

$\begin{matrix}{{{Te}(2)} = {{{- \frac{{\cos\left( \frac{\pi}{10} \right)} - {{3 \cdot \frac{1 - {\sin\left( \frac{\pi}{10} \right)}}{1 - {\sin\left( \frac{13\pi}{10\;} \right)}}}{\cos\left( \frac{13\pi}{10} \right)}}}{{2{\cos\left( \frac{7\pi}{10} \right)}} + {{3 \cdot \frac{1 + {\sin\left( \frac{7\pi}{10} \right)}}{1 - {\sin\left( \frac{13\pi}{10\;} \right)}}}{\cos\left( \frac{13\pi}{10} \right)}}}} \cdot {Te}} \approx {K\;{2 \cdot {Te}}}}} & (15) \\\begin{matrix}{{{Te}(3)} = {{{- \frac{1 - {\sin\left( \frac{\pi}{10} \right)}}{1 - {\sin\left( \frac{13\pi}{10} \right)}}} \cdot {Te}} + {\frac{1 + {\sin\left( \frac{7\pi}{10} \right)}}{1 - {\sin\left( \frac{13\pi}{10} \right)}} \cdot {{Te}(2)}}}} \\{= {{{- \begin{Bmatrix}{\frac{1 - {\sin\left( \frac{\pi}{10} \right)}}{1 - {\sin\left( \frac{13\pi}{10} \right)}} +} \\{\frac{{\cos\left( \frac{\pi}{10} \right)} - {{3 \cdot \frac{1 - {\sin\left( \frac{\pi}{10} \right)}}{1 - {\sin\left( \frac{13\pi}{10} \right)}}}{\cos\left( \frac{13\pi}{10} \right)}}}{{2{\cos\left( \frac{7\pi}{10} \right)}} + {{3 \cdot \frac{1 + {\sin\left( \frac{7\pi}{10} \right)}}{1 - {\sin\left( \frac{13\pi}{10} \right)}}}{\cos\left( \frac{13\pi}{10} \right)}}} \cdot} \\\frac{1 + {\sin\left( \frac{7\pi}{10} \right)}}{1 - {\sin\left( \frac{13\pi}{10} \right)}}\end{Bmatrix}} \cdot {Te}} \approx {K\;{3 \cdot {Te}}}}}\end{matrix} & (16)\end{matrix}$

FIG. 31 is a graph showing upper limits of the magnitudes Te(2) andTe(3), and the magnitude Te(0) of the 0^(th)-order component τe(0) isexpressed on the horizontal axis using the magnitude Te. An inequation0≤Te(0)≤(¼)·Te is satisfied in an area (IV), an inequation(¼)·Te≤Te(0)≤K2·Te is satisfied in an area (V), and an inequationK2·Te≤Te(0) is satisfied in an area (VI). In the areas (IV) and (V), theupper limit of the magnitude Te(2) is equal to the magnitude Te(0). Itis desirable that the magnitude Te(3) be zero in the area (IV). In thearea (V), the upper limit of the magnitude Te(3) is a function of themagnitudes Te(0) and Te, and is [K3/(4·K2−1)]·(4·Te(0)−Te). In the area(VI), the magnitudes are as shown in the equations (15) and (16).

When the magnitudes Te(2) and Te(3) are equal to or smaller than therespective upper limits described above, the degree of suppression ofthe peak value of the motor current becomes conspicuous as themagnitudes Te(2) and Te(3) increase, but, when the magnitudes Te(2) andTe(3) take values greater than the respective upper limits, the peakvalue of the motor current may not be suppressed. It is thus desirablethat the magnitudes Te(2) and Te(3) take the respective upper limits.

For such a reason, by assuming that the conditions on the area (VI) areconveniently satisfied in the present embodiment, the even-order torquecommand generation unit 105 t can use the configuration shown in FIG.25, and use a coefficient K2 (≈0.553) in place of the coefficient ½√2,and the odd-order torque command generation unit 105 r can use theconfiguration shown in FIG. 13, and use a coefficient (−K3) (≈0.171) (anegative sign is required as the phase of the 3^(rd)-order componentsτe(3) differs from that in the third embodiment by 180 degrees) in placeof the coefficient g(d) (d=3).

Alternatively, if the areas (IV) and (V) are considered, the even-ordertorque command generation unit 105 t uses the configuration shown inFIG. 22, and the even-order amplitude computing unit 1059 obtains themagnitude Te(2) by assuming that the equation e=2 holds. The odd-ordertorque command generation unit 105 r uses the odd order d (=3) in placeof the even order e in the configuration shown in FIG. 22. A block thatobtains the magnitude Te(3) is used in place of the even-order amplitudecomputing unit 1059. However, a value π is used as the shift amount kshown in FIG. 22 to cause the phase in which the 3^(rd)-order componentsτe(3) take the local maximum value to match the phase in which thefundamental wave components τe(1) take the local maximum value.

In a case where a fundamental wave frequency of the vibration torque τvcorresponds to the equation n=2 as in a case where the mechanical loadis the two-cylinder compressor, it is obvious that the third to seventhembodiments are applicable by translating the odd number d in theabove-mentioned description into an integer 2·d and translating the evennumber e in the above-mentioned description into an integer 2·e.

Eighth Embodiment

FIG. 32 is a block diagram illustrating the configuration of a primarymagnetic flux command generation device 103 used in the motor controldevice 1 in an eighth embodiment. The primary magnetic flux commandgeneration device 103 receives the δc-axis current iδc, the γc-axiscurrent iγc, the order n, and the rotational angle θm as inputs, andoutputs the primary magnetic flux command Λδ* to the magnetic fluxcontrol unit 102. The primary magnetic flux command generation device103 can be provided in the motor control device 1 illustrated in FIG. 1.

The primary magnetic flux command generation device 103 includes a0^(th)-order component extraction unit 103 a, an n^(th)-order componentextraction unit 103 b, a composite value calculation unit 103 c, anadder 103 d, and a magnetic flux command setting unit 103 e.

The 0^(th)-order component extraction unit 103 a performs the Fouriertransform using the γc-axis current iγc as the function F(θm) in theequations (8) to obtain the value a0 as a 0^(th)-order component iγc(0)of the γc-axis current iγc.

The n^(th)-order component extraction unit 103 b also performs theFourier transform using the γc-axis current iγc as the function F(θm) inthe equations (8) to obtain the value bn as a sine value componentiγcs(n) of the γc-axis current iγc for the n^(th) order and the value anas a cosine value component iγcc(n) of the γc-axis current iγc for then^(th) order.

The composite value calculation unit 103 c combines the sine valuecomponent iγcs(n) and the cosine value component iγcc(n) as with thecomposite value calculation unit 11 y to obtain a second γc-axis currentcorrection value Δiγc2. The combination corresponds to obtaining acomposite value of the n^(th)-order components of the γc-axis currentiγc as the second γc-axis current correction value Δiγc2.

The adder 103 d adds the 0^(th)-order component iγc(0) and the secondγc-axis current correction value Δiγc2 to obtain a second correctedγc-axis current iγc2. The magnetic flux command setting unit 103 ecalculates the primary magnetic flux command Λδ* on the basis of theδc-axis current iδc and the second corrected γc-axis current iγc2.

While the function of the magnetic flux command setting unit 103 e isknown, for example, in Japanese Patent No. 5556875, the magnetic fluxcommand setting unit 103 e sets the primary magnetic flux command Λδ* byequations shown below by introducing the field magnetic flux Λ0 and acomponent Ld of the d axis and a component Lq of the q axis ofinductance of the synchronous motor 3, for example. The q axis leads thed axis by an electrical angle of 90 degrees.

$\begin{matrix}{{{\Lambda\delta}*=\sqrt{{{{\left( {{\Lambda 0} - {{{Ia} \cdot \sin}\;\beta}} \right.{*)}}^{2} + \left( {{{Lq} \cdot {Ia} \cdot \cos}\;\beta} \right.}{*)}}^{2}}}{\beta*={\sin^{- 1}\left\lbrack \frac{{- {\Lambda 0}} + {\Lambda 0}^{2} + {8 \cdot \left( {{Lq} - {Ld}} \right)^{2} \cdot {Ia}^{2}}}{4 \cdot \left( {{Lq} - {Ld}} \right) \cdot {Ia}} \right\rbrack}}{{Ia} = \sqrt{{i\;\delta\; c^{2}} + {i\;\gamma\; c\; 2^{2}}}}} & (17)\end{matrix}$

The primary magnetic flux control based on the primary magnetic fluxcommand Λδ* determined using the equations (17) maximizes the torquewith respect to the magnitude of the current [I]. The field magneticflux Λ0 and the inductance of the synchronous motor 3 are instrumentalconstants of the synchronous motor 3, and thus can be stored in theprimary magnetic flux command generation device 103.

It can be said that an angle β* is an angle by which a current Ia leadsthe q axis. It can be said that the current Ia is the absolute value ofthe current [I]. It can be said that the primary magnetic flux commandΛδ* is obtained on the basis of the second corrected γc-axis currentiγc2, the δc-axis current iδc, the field magnetic flux Λ0, and theinductance of the synchronous motor 3.

Alternatively, an equation Ia==√(id·id+iq·iq) may be used in place ofthe third equation of the equations (17) by introducing a d-axiscomponent id and a q-axis component iq of the current [I]. Note that, inthis case, relationships in equations (18) shown below are establishedby introducing the load angle φ and the amplitude Λδ of the primarymagnetic flux (see Japanese Patent No. 5556875).

$\begin{matrix}{{{\tau\; e} = {P \cdot {\Lambda\delta} \cdot {Ia} \cdot {\cos\left( {\varphi - \beta} \right)}}},{{\tan\;\beta} = {- \frac{id}{iq}}},{{{{\lambda\delta} \cdot \sin}\;\varphi} = {{Lq} \cdot {iq}}},{{{{\lambda\delta} \cdot \cos}\;\varphi} = {{{Ld} \cdot {id}} + {\Lambda 0}}}} & (18)\end{matrix}$

FIG. 33 is a graph showing the dependence of the primary magnetic fluxcommand Λδ* obtained by the equations (17) on the second correctedγc-axis current iγc2, in other words, a graph showing the primarymagnetic flux command Λδ* set by the second corrected γc-axis currentiγc2. The primary magnetic flux command Λδ* increases monotonically withincreasing second corrected γc-axis current iγc2.

Instead of performing calculation in the equations (17), the magneticflux command setting unit 103 e may perform calculation using anapproximation. Alternatively, the magnetic flux command setting unit 103e may store in advance a table including calculation results, and obtainthe primary magnetic flux command Λδ* with reference to the tableinstead of performing sequential calculation.

As described above, by obtaining the primary magnetic flux command Λδ*in consideration of the n^(th)-order components of the γc-axis currentiγc, the primary magnetic flux control can be performed in response to avariation of the γc-axis current iγc, which is affected by then^(th)-order components of the output torque τe and the vibration torqueτv. As can be seen from the equation (7), the γc-axis current iγc is aparameter relating to the output torque τe, is controlled so that anequation λγc=0 holds, in particular, in the primary magnetic fluxcontrol, and thus becomes a main parameter in a case where the primarymagnetic flux command κδ* as a command value of the δc-axis componentλδc of the primary magnetic flux is set in accordance with the outputtorque τe (because the number of pole pairs P is specific to thesynchronous motor 3, and has a fixed value).

The primary magnetic flux command Λδ* may be set from the 0^(th)-ordercomponent and the n^(th)-order components of the output torque τe(regardless of whether this is a detected value or an estimated value).In this case, various amounts in the primary magnetic flux commandgeneration device 103 are as shown in FIG. 35. The 0^(th)-ordercomponent τe(0) of the output torque τe, the sine value component τes(n)and the cosine value component τec(n) of the output torque τe for then^(th) order, a composite value Δτe2, and output torque τe2 aftercorrection are herein used. FIG. 36 is a graph showing the primarymagnetic flux command Δδ* set from the output torque τe2 aftercorrection. The magnetic flux command setting unit 103 e sets theprimary magnetic flux command Λδ* in accordance with this graph or anequation on which this graph is based.

According to the equations (18), the current Ia is also a parameter forsetting the output torque τe, and, in consideration of the thirdequation of the equations (17), the δc-axis current iδc is also aparameter for setting the output torque τe. The primary magnetic fluxcommand Λδ* may thus be set from a 0^(th)-order component andn^(th)-order components of the δc-axis current iδc. In this case,various amounts in the primary magnetic flux command generation device103 are as shown in FIG. 37. A 0^(th)-order component iδc(0) of theδc-axis current iδc, a sine value component iδcs(n) and a cosine valuecomponent iδcc(n) of the δc-axis current iδc for the n^(th) order, acomposite value Δiδc2, and a δc-axis current iδc2 after correction areherein used. FIG. 38 is a graph showing the primary magnetic fluxcommand Λδ* set from the δc-axis current iδc2 after correction. Themagnetic flux command setting unit 103 e sets the primary magnetic fluxcommand Λδ* in accordance with this graph or an equation on which thisgraph is based. Similarly to the second corrected γc-axis current iγc2,an equation Ia=√(iδc2·iδc2+iγc√iγc) is used in place of the thirdequation of the equations (17).

Alternatively, in the primary magnetic flux command generation device103, the 0^(th)-order component extraction unit 103 a, the n^(th)-ordercomponent extraction unit 103 b, the composite value calculation unit103 c, and the adder 103 d shown in FIG. 32 and those shown in FIG. 37can be provided in pairs to obtain the second corrected γc-axis currentiγc2 and the δc-axis current iδc2 after correction. In this case, themagnetic flux command setting unit 103 e can handle the current Ia as√(iδc2·iδc2+iγc2·iγc2).

Similarly, the load angle φ is also a parameter for setting the outputtorque τe, and thus the primary magnetic flux command Λδ* may be setfrom a 0^(th)-order component and n^(th)-order components of the loadangle φ. In this case, various amounts in the primary magnetic fluxcommand generation device 103 are as shown in FIG. 39. A 0^(th)-ordercomponent φ(0) of the load angle φ, a sine value component φs(n) and acosine value component φc(n) of the load angle φ for the n^(th) order, acomposite value Δφ2, and a load angle φ2 after correction are hereinused. FIG. 40 is a graph showing the primary magnetic flux command Λδ*set from the load angle φ2 after correction. The magnetic flux commandsetting unit 103 e sets the primary magnetic flux command Λδ* inaccordance with this graph or an equation on which this graph is based.

As described in the first embodiment, the γc-axis current iγc is atarget of correction based on the n^(th)-order components of the outputtorque τe and the vibration torque τv to correct the rotational speedcommand. It is thus desirable to use the same value or the same pair ofvalues as the order n used in the first embodiment and as the order nused in the eighth embodiment. This provides the primary magnetic fluxcommand Δδ* suitable for operation of the speed command correctiondevice 12, and enables the primary magnetic flux control matching thecorrected rotational speed command ωe*.

In the first embodiment, to suppress the ripple of the output torque τeand the vibration torque τv, only a ripple component thereof is used toperform calculation. In the eighth embodiment, however, there is a needto obtain the primary magnetic flux command corresponding to averagetorque, and thus the second corrected γc-axis current iγc2 is calculatedalso using the 0^(th)-order component iγc(0), and the primary magneticflux command Δδ* is calculated on the basis of the second correctedγc-axis current iγc2. The same applies to the other parameters.

FIG. 41 is a block diagram illustrating the configuration of amodification of the motor control device 1 and peripherals thereof.Compared with the configuration shown in FIG. 1, the high-pass filter110 is at a different location in the motor control device 1.Specifically, the high-pass filter 110 removes a DC part from theγc-axis current iγc. The adder 107 adds the first γc-axis currentcorrection value Δiγc1 to an output of the high-pass filter 110 toobtain the first corrected γc-axis current iγc1. The first correctedγc-axis current iγc1 is multiplied by the predetermined gain Km by theconstant multiplication unit 108, so that the angular speed correctionamount Δωe* is obtained.

The high-pass filter 110 is usually designed to always allow the firstγc-axis current correction value Δiγc1 to pass therethrough. Themodification shown in FIG. 41 thus has equivalent configuration to thatin FIG. 1.

While the invention has been described in detail, the foregoingdescription is in all aspects illustrative and not restrictive. It istherefore understood that numerous modifications not having beendescribed can be devised without departing from the scope of theinvention.

The invention claimed is:
 1. A speed command correction device forcorrecting a rotational speed command in a method of matching a primarymagnetic flux with a primary magnetic flux command in a first axis on abasis of said primary magnetic flux command and said rotational speedcommand, said rotational speed command being a command value of arotational speed on an electrical angle of a synchronous motor fordriving a periodic load, said primary magnetic flux being a composite ofa magnetic flux generated by a current flowing through said synchronousmotor and a field magnetic flux of said synchronous motor, said firstaxis leading said field magnetic flux by a predetermined phasedifference, said device comprising: a first subtractor that subtracts anangular speed correction amount from said rotational speed command toobtain a corrected rotational speed command; an adder that adds asecond-axis current correction value to a second-axis current to obtaina corrected second-axis current, said second-axis current being acomponent of said current in a second axis leading said first axis by anelectrical angle of 90 degrees; a DC part removal unit that removes a DCpart from said corrected second-axis current to obtain said angularspeed correction amount; an angular ripple extraction unit that obtainsa rotational angle difference from a rotational angle on a mechanicalangle of said synchronous motor, said rotational angle difference beinga ripple component of said rotational angle to a time integral of anaverage value of an angular speed of said mechanical angle; a componentextraction unit that extracts an n^(th)-order component of a fundamentalfrequency of said rotational angle from said rotational angledifference, n being a positive integer; a torque conversion unit thatconverts said n^(th)-order component into an n^(th)-order component ofan estimated value of vibration torque of said synchronous motor; and acorrection amount calculation unit that receives, as an input, saidn^(th)-order component of said estimated value, and obtains saidsecond-axis current correction value using an input into said correctionamount calculation unit.
 2. The speed command correction deviceaccording to claim 1, wherein said correction amount calculation unitobtains, as a coefficient of a Fourier series, a value obtained byperforming proportional integral control on said input into saidcorrection amount calculation unit, and obtains said second-axis currentcorrection value from a result of said Fourier series.
 3. A primarymagnetic flux command generation device for outputting said primarymagnetic flux command used in said method together with said rotationalspeed command corrected by said speed command correction deviceaccording to claim 1, said primary magnetic flux command generationdevice comprising: a fourth component extraction unit that extracts a0^(th)-order component of said second-axis current; a fifth componentextraction unit that extracts an n^(th)-order component of saidsecond-axis current; a composite value calculation unit that obtains acomposite value of said n^(th)-order component of said second-axiscurrent; a second adder that obtains a sum of said 0^(th)-ordercomponent of said second-axis current and said n^(th)-order component ofsaid second-axis current; and a magnetic flux command setting unit thatsets said primary magnetic flux command on a basis of said sum obtainedby said second adder, said current, said field magnetic flux, andinductance of said synchronous motor.
 4. A primary magnetic flux commandgeneration device for outputting said primary magnetic flux command usedin said method together with said rotational speed command corrected bysaid speed command correction device according to claim 1, said primarymagnetic flux command generation device comprising: a fourth componentextraction unit that extracts a 0^(th)-order component of a first-axiscurrent being a component of said current in said first axis; a fifthcomponent extraction unit that extracts an n^(th)-order component ofsaid first-axis current; a composite value calculation unit that obtainsa composite value of said n^(th)-order component of said first-axiscurrent; a second adder that obtains a sum of said 0^(th)-ordercomponent of said first-axis current and said n^(th)-order component ofsaid first-axis current; and a magnetic flux command setting unit thatsets said primary magnetic flux command on a basis of said sum obtainedby said second adder, said current, said field magnetic flux, andinductance of said synchronous motor.
 5. A primary magnetic flux commandgeneration device for outputting said primary magnetic flux command usedin said method together with said rotational speed command corrected bysaid speed command correction device according to claim 1, said primarymagnetic flux command generation device comprising: a fourth componentextraction unit that extracts a 0^(th)-order component of a load anglebeing a phase difference of a phase of said primary magnetic flux from aphase of said field magnetic flux; a fifth component extraction unitthat extracts an n^(th)-order component of said load angle; a compositevalue calculation unit that obtains a composite value of saidn^(th)-order component of said load angle; a second adder that obtains asum of said 0^(th)-order component of said load angle and saidn^(th)-order component of said load angle; and a magnetic flux commandsetting unit that sets said primary magnetic flux command on a basis ofsaid sum obtained by said second adder, said current, said fieldmagnetic flux, and inductance of said synchronous motor.
 6. A speedcommand correction device for correcting a rotational speed command in amethod of matching a primary magnetic flux with a primary magnetic fluxcommand in a first axis on a basis of said primary magnetic flux commandand said rotational speed command, said rotational speed command being acommand value of a rotational speed on an electrical angle of asynchronous motor for driving a periodic load, said primary magneticflux being a composite of a magnetic flux generated by a current flowingthrough said synchronous motor and a field magnetic flux of saidsynchronous motor, said first axis leading said field magnetic flux by apredetermined phase difference, said device comprising: a firstsubtractor that subtracts an angular speed correction amount from saidrotational speed command to obtain a corrected rotational speed command;an adder that adds a second-axis current correction value to asecond-axis current to obtain a corrected second-axis current, saidsecond-axis current being a component of said current in a second axisleading said first axis by an electrical angle of 90 degrees; a DC partremoval unit that removes a DC part from said corrected second-axiscurrent to obtain said angular speed correction amount; an output torqueestimation unit that obtains an estimated value of output torque of saidsynchronous motor from said primary magnetic flux, a first-axis current,and said second-axis current, said first-axis current being a componentof said current in said first axis; a component extraction unit thatextracts, from said estimated value, an n^(th)-order component of afundamental frequency of a rotational angle as a mechanical angle ofsaid synchronous motor, n being a positive integer; and a correctionamount calculation unit that receives said n^(th)-order component as aninput, and obtains said second-axis current correction value using saidinput into said correction amount calculation unit.
 7. The speed commandcorrection device according to claim 6, wherein said correction amountcalculation unit obtains, as a coefficient of a Fourier series, a valueobtained by performing proportional integral control on said input intosaid correction amount calculation unit, and obtains said second-axiscurrent correction value from a result of said Fourier series.
 8. Aprimary magnetic flux command generation device for outputting saidprimary magnetic flux command used in said method together with saidrotational speed command corrected by said speed command correctiondevice according to claim 6, said primary magnetic flux commandgeneration device comprising: a fourth component extraction unit thatextracts a 0^(th)-order component of output torque of said synchronousmotor; a fifth component extraction unit that extracts an n^(th)-ordercomponent of said output torque; a composite value calculation unit thatobtains a composite value of said n^(th)-order component of said outputtorque; a second adder that obtains a sum of said 0^(th)-order componentof said output torque and said n^(th)-order component of said outputtorque; and a magnetic flux command setting unit that sets said primarymagnetic flux command on a basis of said sum obtained by said secondadder, said current, said field magnetic flux, and inductance of saidsynchronous motor.
 9. A primary magnetic flux command generation devicefor outputting said primary magnetic flux command used in said methodtogether with said rotational speed command corrected by said speedcommand correction device according to claim 6, said primary magneticflux command generation device comprising: a fourth component extractionunit that extracts a 0^(th)-order component of said second-axis current;a fifth component extraction unit that extracts an n^(th)-ordercomponent of said second-axis current; a composite value calculationunit that obtains a composite value of said n^(th)-order component ofsaid second-axis current; a second adder that obtains a sum of said0^(th)-order component of said second-axis current and said n^(th)-ordercomponent of said second-axis current; and a magnetic flux commandsetting unit that sets said primary magnetic flux command on a basis ofsaid sum obtained by said second adder, said current, said fieldmagnetic flux, and inductance of said synchronous motor.
 10. A primarymagnetic flux command generation device for outputting said primarymagnetic flux command used in said method together with said rotationalspeed command corrected by said speed command correction deviceaccording to claim 6, said primary magnetic flux command generationdevice comprising: a fourth component extraction unit that extracts a0^(th)-order component of a first-axis current being a component of saidcurrent in said first axis; a fifth component extraction unit thatextracts an n^(th)-order component of said first-axis current; acomposite value calculation unit that obtains a composite value of saidn^(th)-order component of said first-axis current; a second adder thatobtains a sum of said 0^(th)-order component of said first-axis currentand said n^(th)-order component of said first-axis current; and amagnetic flux command setting unit that sets said primary magnetic fluxcommand on a basis of said sum obtained by said second adder, saidcurrent, said field magnetic flux, and inductance of said synchronousmotor.
 11. A primary magnetic flux command generation device foroutputting said primary magnetic flux command used in said methodtogether with said rotational speed command corrected by said speedcommand correction device according to claim 6, said primary magneticflux command generation device comprising: a fourth component extractionunit that extracts a 0^(th)-order component of a load angle being aphase difference of a phase of said primary magnetic flux from a phaseof said field magnetic flux; a fifth component extraction unit thatextracts an n^(th)-order component of said load angle; a composite valuecalculation unit that obtains a composite value of said n^(th)-ordercomponent of said load angle; a second adder that obtains a sum of said0^(th)-order component of said load angle and said n^(th)-ordercomponent of said load angle; and a magnetic flux command setting unitthat sets said primary magnetic flux command on a basis of said sumobtained by said second adder, said current, said field magnetic flux,and inductance of said synchronous motor.
 12. A speed command correctiondevice for correcting a rotational speed command in a method of matchinga primary magnetic flux with a primary magnetic flux command in a firstaxis on a basis of said primary magnetic flux command and saidrotational speed command, said rotational speed command being a commandvalue of a rotational speed on an electrical angle of a synchronousmotor for driving a periodic load, said primary magnetic flux being acomposite of a magnetic flux generated by a current flowing through saidsynchronous motor and a field magnetic flux of said synchronous motor,said first axis leading said field magnetic flux by a predeterminedphase difference, said device comprising: a first subtractor thatsubtracts an angular speed correction amount from said rotational speedcommand to obtain a corrected rotational speed command; an adder thatadds a second-axis current correction value to a second-axis current toobtain a corrected second-axis current, said second-axis current being acomponent of said current in a second axis leading said first axis by anelectrical angle of 90 degrees; a DC part removal unit that removes a DCpart from said corrected second-axis current to obtain said angularspeed correction amount; an angular ripple extraction unit that obtainsa rotational angle difference from a rotational angle on a mechanicalangle of said synchronous motor, said rotational angle difference beinga ripple component of said rotational angle to a time integral of anaverage value of an angular speed of said mechanical angle; a firstcomponent extraction unit that extracts an n^(th)-order component of afundamental frequency of said rotational angle from said rotationalangle difference, n being a positive integer; a torque conversion unitthat converts said n^(th)-order component into an n^(th)-order componentof an estimated value of vibration torque of said synchronous motor; anoutput torque estimation unit that obtains an estimated value of outputtorque of said synchronous motor from said primary magnetic flux, afirst-axis current, and said second-axis current, said first-axiscurrent being a component of said current in said first axis; a secondcomponent extraction unit that extracts an n^(th)-order component ofsaid fundamental frequency from said estimated value of output torque; aproration unit that prorates said n^(th)-order component obtained bysaid torque conversion unit and said n^(th)-order component extracted bysaid second component extraction unit with a predetermined prorationrate to respectively obtain a first value and a second value; an adderthat obtains a sum of said first value and said second value; and acorrection amount calculation unit that receives said sum as an input,and obtains said second-axis current correction value using said inputinto said correction amount calculation unit.
 13. The speed commandcorrection device according to claim 12, wherein said first componentextraction unit extracts a vibration torque suppression component fromsaid rotational angle difference, said vibration torque suppressioncomponent being a component for at least one order including a1^(st)-order component of said fundamental frequency of said rotationalangle, said second component extraction unit extracts, from saidestimated value of output torque, a component for an order correspondingto said vibration torque suppression component, said speed commandcorrection device further comprises a third component extraction unitthat extracts an output torque suppression component from said estimatedvalue of said output torque, said output torque suppression componentbeing a component for at least one order other than said ordercorresponding to said vibration torque suppression component, and saidcorrection amount calculation unit further receives said output torquesuppression component as an input, and obtains said second-axis currentcorrection value using said input into said correction amountcalculation unit.
 14. The speed command correction device according toclaim 12, wherein said first component extraction unit extracts a1^(st)-order component of said fundamental frequency of said rotationalangle, said torque conversion unit converts a value extracted by saidfirst component extraction unit into a 1^(st)-order component of saidestimated value of vibration torque, said speed command correctiondevice further comprises an odd-order component extraction unit thatextracts an output torque odd-order suppression component from saidestimated value of output torque, said output torque odd-ordersuppression component being a component for at least one odd order equalto or greater than a 3^(rd) order of said fundamental frequency; anodd-order torque command generation unit that obtains a command value ofsaid output torque odd-order suppression component on a basis of said1^(st)-order component of said fundamental frequency of said estimatedvalue of output torque; and a subtractor that obtains a difference ofsaid output torque odd-order suppression component from said commandvalue, and said correction amount calculation unit further receives saiddifference as an input, and obtains said second-axis current correctionvalue using said input into said correction amount calculation unit. 15.The speed command correction device according to claim 14, wherein saidspeed command correction device further comprises an even-ordercomponent extraction unit that extracts an output torque even-ordersuppression component from said estimated value of output torque, saidoutput torque even-order suppression component being a component for atleast one even order of said fundamental frequency, and said correctionamount calculation unit further receives said output torque even-ordersuppression component as an input, and obtains said second-axis currentcorrection value using said input into said correction amountcalculation unit.
 16. The speed command correction device according toclaim 12, wherein said first component extraction unit extracts a1^(st)-order component of said fundamental frequency of said rotationalangle, said torque conversion unit converts a value extracted by saidfirst component extraction unit into a 1^(st)-order component of saidestimated value of vibration torque, said speed command correctiondevice further comprises an even-order component extraction unit thatextracts an output torque even-order suppression component from saidestimated value of output torque, said output torque even-ordersuppression component being a component for at least one even order ofsaid fundamental frequency; an even-order torque command generation unitthat obtains a command value of said output torque even-ordersuppression component on a basis of said 1^(st)-order component of saidfundamental frequency of said estimated value of output torque; and asubtractor that obtains a difference of said output torque even-ordersuppression component from said command value, and said correctionamount calculation unit further receives said difference as an input,and obtains said second-axis current correction value using said inputinto said correction amount calculation unit.
 17. The speed commandcorrection device according to claim 16, wherein said speed commandcorrection device further comprises an odd-order component extractionunit that extracts an output torque odd-order suppression component fromsaid estimated value of output torque, said output torque odd-ordersuppression component being a component for at least one odd order ofsaid fundamental frequency, and said correction amount calculation unitfurther receives said output torque odd-order suppression component asan input, and obtains said second-axis current correction value usingsaid input into said correction amount calculation unit.
 18. The speedcommand correction device according to claim 16, wherein said speedcommand correction device further comprises an odd-order componentextraction unit that extracts an output torque odd-order suppressioncomponent from said estimated value of output torque, said output torqueodd-order suppression component being a component for at least one oddorder equal to or greater than a 3^(rd) order of said fundamentalfrequency; an odd-order torque command generation unit that obtains acommand value of said output torque odd-order suppression component on abasis of said 1^(st)-order component of said fundamental frequency ofsaid estimated value of output torque; and a subtractor that obtains asecond difference of said output torque odd-order suppression componentfrom said command value, and said correction amount calculation unitfurther receives said second difference as an input, and obtains saidsecond-axis current correction value using said input into saidcorrection amount calculation unit.
 19. The speed command correctiondevice according to claim 16, wherein said even-order torque commandgeneration unit obtains said command value of said output torqueeven-order suppression component on a basis of said 1^(st)-ordercomponent and a 0^(th)-order component of said fundamental frequency ofsaid estimated value of output torque.
 20. The speed command correctiondevice according to claim 12, wherein said correction amount calculationunit obtains, as a coefficient of a Fourier series, a value obtained byperforming proportional integral control on said input into saidcorrection amount calculation unit, and obtains said second-axis currentcorrection value from a result of said Fourier series.
 21. A primarymagnetic flux command generation device for outputting said primarymagnetic flux command used in said method together with said rotationalspeed command corrected by said speed command correction deviceaccording to claim 12, said primary magnetic flux command generationdevice comprising: a fourth component extraction unit that extracts a0^(th)-order component of output torque of said synchronous motor; afifth component extraction unit that extracts an n^(th)-order componentof said output torque; a composite value calculation unit that obtains acomposite value of said n^(th)-order component of said output torque; asecond adder that obtains a sum of said 0^(th)-order component of saidoutput torque and said n^(th)-order component of said output torque; anda magnetic flux command setting unit that sets said primary magneticflux command on a basis of said sum obtained by said second adder, saidcurrent, said field magnetic flux, and inductance of said synchronousmotor.
 22. A primary magnetic flux command generation device foroutputting said primary magnetic flux command used in said methodtogether with said rotational speed command corrected by said speedcommand correction device according to claim 12, said primary magneticflux command generation device comprising: a fourth component extractionunit that extracts a 0^(th)-order component of said second-axis current;a fifth component extraction unit that extracts an n^(th)-ordercomponent of said second-axis current; a composite value calculationunit that obtains a composite value of said n^(th)-order component ofsaid second-axis current; a second adder that obtains a sum of said0^(th)-order component of said second-axis current and said n^(th)-ordercomponent of said second-axis current; and a magnetic flux commandsetting unit that sets said primary magnetic flux command on a basis ofsaid sum obtained by said second adder, said current, said fieldmagnetic flux, and inductance of said synchronous motor.
 23. A primarymagnetic flux command generation device for outputting said primarymagnetic flux command used in said method together with said rotationalspeed command corrected by said speed command correction deviceaccording to claim 12, said primary magnetic flux command generationdevice comprising: a fourth component extraction unit that extracts a0^(th)-order component of a first-axis current being a component of saidcurrent in said first axis; a fifth component extraction unit thatextracts an n^(th)-order component of said first-axis current; acomposite value calculation unit that obtains a composite value of saidn^(th)-order component of said first-axis current; a second adder thatobtains a sum of said 0^(th)-order component of said first-axis currentand said n^(th)-order component of said first-axis current; and amagnetic flux command setting unit that sets said primary magnetic fluxcommand on a basis of said sum obtained by said second adder, saidcurrent, said field magnetic flux, and inductance of said synchronousmotor.
 24. A primary magnetic flux command generation device foroutputting said primary magnetic flux command used in said methodtogether with said rotational speed command corrected by said speedcommand correction device according to claim 12, said primary magneticflux command generation device comprising: a fourth component extractionunit that extracts a 0^(th)-order component of a load angle being aphase difference of a phase of said primary magnetic flux from a phaseof said field magnetic flux; a fifth component extraction unit thatextracts an n^(th)-order component of said load angle; a composite valuecalculation unit that obtains a composite value of said n^(th)-ordercomponent of said load angle; a second adder that obtains a sum of said0^(th)-order component of said load angle and said n^(th)-ordercomponent of said load angle; and a magnetic flux command setting unitthat sets said primary magnetic flux command on a basis of said sumobtained by said second adder, said current, said field magnetic flux,and inductance of said synchronous motor.
 25. A primary magnetic fluxcommand generation device for outputting said primary magnetic fluxcommand used in said method together with said rotational speed commandcorrected by said speed command correction device according to claim 1,said primary magnetic flux command generation device comprising: afourth component extraction unit that extracts a 0^(th)-order componentof output torque of said synchronous motor; a fifth component extractionunit that extracts an n^(th)-order component of said output torque; acomposite value calculation unit that obtains a composite value of saidn^(th)-order component of said output torque; a second adder thatobtains a sum of said 0^(th)-order component of said output torque andsaid n^(th)-order component of said output torque; and a magnetic fluxcommand setting unit that sets said primary magnetic flux command on abasis of said sum obtained by said second adder, said current, saidfield magnetic flux, and inductance of said synchronous motor.